代码之家  ›  专栏  ›  技术社区  ›  DerKuchen

mercurial:创建两次提交的diff

  •  31
  • DerKuchen  · 技术社区  · 15 年前

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

    我试过了

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

    但这只包括最后一个变更集。

    如果没有办法用hg实现这一点,是否有一个工具来组合补丁呢?

    3 回复  |  直到 8 年前
        1
  •  51
  •   Rod    12 年前

    我在想办法弄清楚这件事的时候看到了这一页。我通过 hg help diff .

    hg diff -r <rev> -r <rev> 为我的需要工作(两个标签之间的差异)

        2
  •  6
  •   Chris McCauley    8 年前

    外部差异

    extdiff扩展将允许您使用首选的外部diff工具。在我的例子中,我每天都在使用meld,所以我运行这种类型的命令

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

    首先在extensions部分启用extdiff扩展(我还启用了shelve&record)

    [extensions]
    shelve =
    record =
    hgext.extdiff =
    

    然后添加此部分…

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

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

        3
  •  2
  •   Lazy Badger    12 年前

    出口?每个变更集一个修补程序文件,类似于

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

    推荐文章