Mercurial队列:组合补丁

Mercurial队列:组合补丁,mercurial,mercurial-queue,Mercurial,Mercurial Queue,我一直在使用Mercurial和Mercurial队列,现在有了一个相当合理的工作版本。然而,在我提交补丁之前,我希望将spagetti历史记录合并成离散的逻辑步骤,而不是半重叠重复的do-undo-redo-redo-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it 我该怎么做呢?hg qfold是一条路要走。小心点。确保你之前已经阅读了所有的内容。将patchqueue的版本也合理(作为嵌套的repositor

我一直在使用Mercurial和Mercurial队列,现在有了一个相当合理的工作版本。然而,在我提交补丁之前,我希望将spagetti历史记录合并成离散的逻辑步骤,而不是半重叠重复的do-undo-redo-redo-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it-it


我该怎么做呢?

hg qfold
是一条路要走。小心点。确保你之前已经阅读了所有的内容。将patchqueue的版本也合理(作为嵌套的repository),这样您就有了备份:

hg qinit[-c]

初始化一个新的队列存储库

队列存储库已由取消版本设置 违约如果-c是 如果指定,它将创建一个单独的嵌套存储库 对于修补程序(qinit-c也可以稍后运行以转换 将未版本化的修补程序存储库转换为版本化的修补程序存储库)。 您可以使用qcommit将更改提交到此队列存储库


谢谢,成功了!还有人声称,
hg export…>combined.patch
在不需要MQ的情况下也同样有效-是这样吗?使用mercurial 1.5以后的版本,您还可以连续导入多个补丁,因此无需在导出时将它们合并。您仍然需要MQ来剥离您的更改,或者您需要克隆一个干净的repo并在那里应用组合的补丁,然后放弃您的分支。我的工作太多了。