Git 当两个功能分支都更新了代码段时,如何使功能分支与主分支一起更新
我有一个主分支和一个功能分支。功能分支会以每天更新的代码合并到主分支中。但是,经常发生的情况是,更改直接合并到主分支中,而不首先经过要素分支 这意味着主分支也需要合并到要素分支中。因此,主分支包含一些更新的代码和一些过时的代码,而功能分支包含一些更新的代码和一些过时的代码 尝试将主分支合并到要素分支时,有时主分支希望恢复要素分支上所做的更改,即使要素分支具有最新的代码 如何防止这种情况 这意味着主分支也需要合并到要素分支中 这不是最佳做法:Git 当两个功能分支都更新了代码段时,如何使功能分支与主分支一起更新,git,merge,fork,Git,Merge,Fork,我有一个主分支和一个功能分支。功能分支会以每天更新的代码合并到主分支中。但是,经常发生的情况是,更改直接合并到主分支中,而不首先经过要素分支 这意味着主分支也需要合并到要素分支中。因此,主分支包含一些更新的代码和一些过时的代码,而功能分支包含一些更新的代码和一些过时的代码 尝试将主分支合并到要素分支时,有时主分支希望恢复要素分支上所做的更改,即使要素分支具有最新的代码 如何防止这种情况 这意味着主分支也需要合并到要素分支中 这不是最佳做法: 您合并“上游”(从功能到主控),其中合并冲突更为有限
- 您合并“上游”(从
到功能
),其中合并冲突更为有限(除非在您的情况下,您从其他变更分支同时进化到主控
)主控
- 您可能不想合并“下游”(从
到master
),因为feature
和其他分支的并发更改几乎可以保证合并冲突,这两个分支都合并到master
feature
功能
,并在主功能
上重新创建它,然后再次合并需要集成在一起的更改
集成分支变为临时分支,这意味着它甚至不应该合并到主分支:
- 您可以将更改合并到
,以将它们一起测试功能
- 然后选择要合并到
主版本的更改,因为它们已准备好作为下一版本的一部分
- 您可以删除
,然后重新创建它功能
这就是背后的想法。是否可以使用更具预测性的分支策略?例如。这是否也适用于3个分支的流?1个主分支机构和2个集成分支机构?当前的工作流程是要素分支1与要素分支2合并,这是因为它使审阅更容易。然后,特征分支2合并到主分支中。一旦其合并,将从要素分支1中删除并重新创建。功能分支1是否也应该这样做?换句话说,功能分支1是否应该在功能分支1与功能分支2合并后立即从master中删除并重新创建功能分支1?@simonlombard
gitworkflow
及其集成分支背后的所有想法(您有几个)您永远不会将集成分支合并到master
:这将为您提供一种合并提交到big以进行调试的方式。在生产中出现问题的情况下,您所知道的只是最后一次合并提交(由许多特性组成,全部捆绑在一起)中存在问题。通过有选择地合并功能分支,每个分支分别合并到master
,git对分
可以在生产中出现问题时,指向正确的功能合并提交,从而简化调试过程。我明白了。这就是我们目前正在做的事情。然而,一旦特征分支被合并,我们就会收到必须有选择地修复的错误。这些变化很小,需要重新审视。这就是我们在特征分支1上进行这些更改的时候,特征分支1应该是主分支的镜像。但是这个分支是如此短暂,因为它一直在工作,所以很难实现审查,所以我们创建了FeatureBranch2,在这里我们测试并批量审查更改。但这就给我们留下了一个问题,即如何使特性分支1与master@simonlombard这将是通过返利,在master上阅读功能。@simonlombard我的意思是返利,而不是阅读,但我的Android手机auto correct不可靠;)