在处理长期存在的本地主题分支时与远程主节点"Keeping up"



我在本地主题分支上工作了一段时间,偶尔只做一些更改。

与此同时,分支发生了显著的演变。我决定将master分支中的新更改合并到我的本地主题分支中(与我从中分支出来的原始master提交相比,它几乎没有任何更改):

git fetch
git checkout my_branch
git merge origin/master

但是git警告我:

请输入一条提交消息,解释为什么需要进行此合并,特别是如果它将更新的上游合并到主题分支中。

这让我很好奇。为什么要发出警告?我应该改为执行重新基准吗?还是樱桃采摘?除此之外,在我的情况下,我该如何使用rebase或cherry pick?

我们已经和git的核心维护人员讨论过这个确切消息的措辞,因为你是对的,它不是很清楚。

木偶实验室的编程指南很好地解释了为什么这是次优的,并提供了一个更可取的解决方法:

应该在主题分支上完成工作,并且不使用ff进行合并。原因是git的历史会变得更加清晰。该主题很好地分支了与组相关的提交,并且不使用ff进行合并可以在历史中保留该分组。

如果可以避免的话,不要将上游分支合并到主题分支中。虽然这是解决上游分支中开发和开发之间冲突的一种方法,但它会导致不干净的历史,尤其是在合并提交中更改代码,这非常难处理。

如果您必须适应外部变化,我们更希望您将分支机构的基础重新设置为上游,这样我们就不会陷入困境。

木偶实验室

相关内容

最新更新