![]() |
1
8
我不会为每个开发人员创建分支。我推荐一种 continuous integration 在这个过程中,你们四个人都从一个“主干”签出,并经常合并更改—每天多次。理想情况下,您应该有一个标准化的构建工具(例如Maven、Ant等)和一个构建调度器(例如Hudson、Cruise、TeamCity等)。将这两个工具放在SCM工具(Subversion)之上,您可以有一个过程不断地将您签入的所有更改构建到主干中,并在出现问题时通过电子邮件发送给所有开发人员。这可以防止您通过错误的更改或合并破坏构建,同时允许您保持轻量级分支结构(即一个分支-主干)。 分支使您的代码更改与您的团队成员的代码更改更难集成。分支实际上应该用于分支——创建软件的专门管理的“分支”。例如,如果您要发布软件的1.0版,最好在主干上创建一个1.0分支(在开发之后但在发布之前),这样您就可以在不影响主干上正在进行的开发的情况下维护此版本(可能是2.0版)。 我建议抓取 Pragmatic Version Control with Subversion . 这是一个非常可靠的SCM概述,包含Subversion的详细信息。 |
![]() |
2
2
|
![]() |
3
2
还有另一个借口去贴Eric Sink的链接 source control howto . 这无疑是我所发现的最好的源代码管理介绍,无论您使用何种工具,它都是相关的。 |
![]() |
4
2
最安全的策略是为每个分支创建一个分支 流程如下所示:
|
![]() |
5
1
通常,只有4个人在编写代码,你不需要4个分支。您可能根本不需要分支,只需将所有分支放在一个主干中,然后再进行操作即可。将您签出的本地工作副本视为您的“匿名本地分支”。 如果您预期您的代码在一段时间内至少存在两个版本,则分支非常有用。例如,当您发布2.0版时,您希望开始使用2.1版,但在可预见的未来必须支持2.0版。您可以将2.1作为一个全新的项目启动,但这样您就失去了将补丁从2.0移植到2.1的能力,反之亦然。因此,您可以从中命名一个版本主干和分支。 另一种情况是,当你们中的一个人开始实现一个新模块或重新实现一个现有模块,并且知道这将需要一段时间(比通常的提交周期更长),并且不能保证在这段时间内不会影响其他人的代码。然后你让他分支,发展他的东西,然后你想办法把它合并回来。在这里,你有一个主干你分支和合并回。 |
![]() |
6
0
SVN中的分支(与分布式版本控制系统相反)更适用于可能破坏同事代码或需要大量工作(在这种情况下,您希望进行许多可能无法编译的增量提交)或管理发布之类的大而全面的更改。 用一根树枝(树干,如其他答案中所指出的)。当多人必须处理同一代码时,第二个签入的人将手动修复冲突。在一次修订中修复冲突是非常困难的 很 比尝试将更改的多个修订合并到另一个分支更容易,因为该分支自拆分后也进行了多个修订。 |
![]() |
stimulate · 如何自动跟踪git分支上的特定文件 6 年前 |
![]() |
Dan Hulme · 如何可靠地获取HEAD值,以便再次签出? 6 年前 |
![]() |
akshay1188 · 如何在Xcode9上查看当前的git分支? 7 年前 |