我希望能够为大多数可想到的情况和组织选择正确的分支策略。因此,我正在寻找在开发组织中扩展代码存储库分支的使用的积极和消极影响的广泛列表。
请在每个帖子中只发布一个赞成或 反对的意见,以便投票系统可以帮助对反馈进行排名。
我希望能够为大多数可想到的情况和组织选择正确的分支策略。因此,我正在寻找在开发组织中扩展代码存储库分支的使用的积极和消极影响的广泛列表。
请在每个帖子中只发布一个赞成或 反对的意见,以便投票系统可以帮助对反馈进行排名。
优点:通过将最新部署的版本保留在主干中,可以快速推出小型修复,而无需对最新开发版本进行广泛测试。
优点:开发人员可以在更紧密的迭代中更自由地工作,而不会踩到彼此的脚。
优点:如果您有很多分支,您将被迫采用现代 DVCS(我的经验是使用 Mercurial,但我听说 git 或 Bazaar 也不错),而不是继续使用传统的集中式系统(例如 svn)。
优点:分支可用于在尝试新代码时促进“假设”场景。最后可以做出合并新功能或放弃它的决定。
骗局(它可能是一个大骗局):在未来的某个时间点合并。持续时间越长,代码库的偏差越大,你的生活就会越艰难。我的建议:非常仔细地考虑分支并确保仅在必要时才这样做,并在以后需要时考虑合并所涉及的工作。
缺点:同时在空中有太多的分支,你开始忘记在哪里提交了东西,在哪里进行了更改等。
缺点:合并噩梦。
优点:为同时开发或支持多个工作流而分散代码具有更大的灵活性。
缺点:初级开发人员的学习门槛更高。
优点:每次更新都独立于其他更新,因此可以并行工作。
缺点:必须有人管理分支机构并保持领先地位。在大多数团队中,这都是靠边站的。