如何融合使用hgignore

JS.*_*JS. 2 mercurial meld

我刚刚开始使用Meld.我正在使用其版本控制差异功能,并且它运行良好,除了它似乎不使用.hgignore文件.

我正在工作的那棵树很大,但我只追踪了一小部分,所以Meld正在花费很长的时间来扫描整棵树,其中90%我不太关心.

我正在使用Meld 1.6.0,它似乎不允许用户手动选择VC类型,因此我被迫在包含.hg子目录的目录中启动比较.

有没有办法让Meld使用.hgignore文件或者覆盖Meld的默认VC选择?

小智 11

我认为你应该做"反过来" ,即:配置mercurial使用meld作为其"外部差异"工具,利用"extdiff"扩展.

注意:以上所有内容均已在类UNIX环境中进行过测试

  1. 在〜/ .hgrc中通过添加到[extensions]部分来启用"extdiff"扩展:
    [extensions]
    extdiff =
  2. 添加以下内容:
    [extdiff]
    cmd.meld = # if meld is not in your path, you may need to type in here the absolute path to the script
  3. 保存〜/ .hgrc文件.

现在,然后你可以使用一个新的hg子命令.在终端输入hg repo文件夹:

user@machine:~$ cd myrepo
user@machine:~/myrepo$ hg meld
Run Code Online (Sandbox Code Playgroud)

这将适当地产生融合,尊重.hgignore,mercurial尊重自己)

对于GUI技巧,您可以将其连接到您喜欢的文件管理器的上下文菜单:1.Linux:您可以与Shaman的鼓更多地跳舞,但TortoiseHg尊重extdiff扩展.1. Windows:TortoiseHg自动执行此操作1. Mac:不知道如何对Finder执行此操作:),可能需要AppleScripting.

问候.