如何在不引发合并冲突集群的情况下将子分支作为不同的开发分支进行即将到来的提交和合并****?



所以我有这个布局...

Master


Dev Branch


Feature Branch A

但是在项目之间移动,我将要添加一个具有此布局的分支......

Master
      Feature Branch B
     /
Dev Branch


Feature Branch A

但这是棘手的部分...功能分支 A 具有有助于功能分支 B 的功能...

Master
      Feature Branch B (should start with code that's presently in A)
     /             ^
Dev Branch         |
             |
            |
Feature Branch A

最重要的是,在分支 A 或 B 合并之前,Dev 分支将首先获得其他分支,这两个分支都必须在重新同步之前合并,这意味着 B 不能基于一个...

Master
      Feature Branch B (should start with code that's presently in A)
                      /  ^          /     
Dev Branch-------------- | ------- / ------------
                      |        /       /
                     |       /       /
       Feature Branch A---- / ------/
                     /    /
                   /    /
    Feature Branch 3   /
                     /
Feature Branch Number 4

那么我如何将分支 B 启动到初始代码基于 A 但不绑定到它的地方,而是在技术上仍然基于 Dev,以便其他内容可以稍后毫无问题地合并到其中,然后它可以重新合并到 dev 中没有问题?我的意思是,我可以分支 dev,然后从 A 复制粘贴代码,但我希望这会在以后出现我宁愿避免的荒谬合并冲突。

如果只需要从不同的功能分支中选择某些功能,则始终可以将它们挑选到您自己的功能分支中。

或者,如果"B"无论如何都需要"A">

中的所有内容,只需将其重新定位在"A"之上并具有"A"的所有功能即可。定期调整基数,以便在冲突堆积之前及早发现任何冲突。

如果你保持源文件简短而切中要害(即没有包含数千行代码的文件(,你可以进一步减少遇到复杂冲突情况的机会。

此外,使用好的编辑器或合并工具,修复合并冲突要容易得多。您可以获得来自的三窗格视图。

最新更新