当功能分支和主分支都有更新的代码段时,如何保持功能分支与主分支的更新



我有一个主分支和一个功能分支。大约每天都会用更新的代码将功能分支合并到主分支中。然而,经常会发生的情况是,更改直接合并到主分枝中,而不首先经过功能分支。

这意味着主分支也需要合并到特征分支中。因此,主分支包含一些更新的代码和一些过时的代码,功能分支包含一些升级的代码和过时的代码。

当尝试将主分支合并到功能分支中时,有时主分支希望恢复对功能分支所做的更改,即使功能分支具有最新的代码。

如何防止这种情况发生?

这意味着主分支也需要合并到功能分支中

这不是最佳做法:

  • 你合并了"上游";(从featuremaster(合并冲突更为有限(除非在您的情况下,您从其他变更分支同时进化到master(
  • 您可能不想合并";"下游";(从masterfeature(,其中合并冲突几乎得到了保证,因为来自master和其他分支的并发更改都合并到feature

理想情况下,您只需删除feature,然后在master之上重新创建它,在那里您可以再次合并需要集成在一起的更改。

集成分支变成了一个瞬态分支,这意味着它甚至不应该被合并到主分支:

  • 您将更改合并到feature,以便一起测试它们
  • 然后选择要合并到master的更改,因为它们已准备好成为下一个版本的一部分
  • 删除feature,然后重新创建它

这就是gitworkflow(一个词(背后的想法。

最新更新