2011-04-13 39 views
8

我有一个项目,有时会分支。自从分裂以来,两个分支都有很多提交,我想将它们合并为一个。简单地合并两个头是不够的,因为它有太多的冲突,并且合并的分支也不稳定,并且不起作用。在mercurial中执行增量合并的最简单方法

因此我想逐步合并两个分支。增量我的意思是我接受其中一个分支的提示并一次应用另一个分支的更改。测试每个合并,并继续如果一切顺利。

使用mercurial执行此操作的最简单方法是什么?

回答

6

你几乎已经概述了一个策略。假设你有两个头,名为headA和headB。 hg up -r headB添加到两个头中的一个,然后重复使用hg merge -r X,其中X是沿着另一个开发线的修订。

您可以使用hg log -r 'ancestor(headA,headB)::headA'来获取这些合并的良好候选列表(取决于整体拓扑)。

0

您可以使用hg transplant将特定变更集提取到分支中。

+2

这里的缺点是你最终会在两次不同的hashid中对你的repo进行两次相同的修改。在可能的情况下,合并始终优于移植。 – 2011-04-14 02:06:02

相关问题