Mercurial:创建两个提交的差异

时间:2010-05-03 19:58:09

标签: mercurial diff

有没有办法用mercurial获取两个提交的更改? 第二个提交不是直接在第一个提交之后,它们之间还有其他提交。

我试过

hg diff [some params] --change xxxxx --change yyyyy > file.patch

但仅包括最后一个变更集。

如果用hg无法实现这一点,是否可能有一个组合补丁的工具?

3 个答案:

答案 0 :(得分:53)

我试图弄清楚这件事情时,我来到了这个页面。我通过hg help diff找到了我的解决方案。

hg diff -r <rev> -r <rev>符合我的需求(在两个标签之间进行区分)

答案 1 :(得分:6)

外部差异

extdiff扩展程序允许您使用首选的外部差异工具。在我的情况下,我每天都使用meld运行这种类型的命令

hg meld -r <rev1> -r <rev2>

首先在扩展部分启用extdiff扩展(我还启用了搁置和记录)

[extensions]
shelve =
record =
hgext.extdiff =

然后添加此部分......

[extdiff]
cmd = meld
cmd.meld = /usr/bin/meld

到你的.hgrc文件。显然,使用用于启动首选工具的命令替换meld

答案 2 :(得分:2)

导出?每个变更集一个补丁文件,类似于

hg export --output %r.patch --rev A --rev B