如何在使用mq合并mercurial中的分支时重新绑定补丁队列?

时间:2013-02-18 12:18:20

标签: mercurial mercurial-queue

在我们的工作流程中,我们使用Mercurial mq来开发default分支。但是,当我们需要将另一个分支合并到default时,在合并的default之上应用这些补丁的最佳做法是什么?

明显(丑陋)方式:弹出所有补丁,合并分支然后推送所有补丁并修复所有.rej个文件......

正确的方法应该是以某种方式使用rebase,但不确定什么是正确的工作流程。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

我认为hg rebase --mq可能会做你想要的。如果没有,试试这个:

hg rebase -s qbase -d default

答案 1 :(得分:0)

rebase命令本身知道Mercurial队列,至少在Mercurial的半新版本中。

请参阅rebase documentation,在MQ documentationsomebody's blog post中提及此功能。

简而言之,您可以像应用任何其他更改一样重新应用已应用的MQ补丁,并且rebase足够智能,以确保它们之后仍然作为MQ补丁。