2

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

我正在工作的树很大,但我只跟踪一小部分,所以 Meld 需要很长时间来扫描整个树,其中 90% 是我不太关心的。

我使用的是 Meld 1.6.0,它似乎不允许用户手动选择 VC 类型,所以我不得不在包含 .hg 子目录的目录中开始比较。

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

4

1 回答 1

11

我认为您应该“反过来”,即:配置mercurial以使用meld作为其“外部差异”工具,利用“extdiff”扩展名。

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

  1. 在 ~/.hgrc 通过添加到 [extensions] 部分启用“extdiff”扩展:
    [扩展]
    扩展差异 =
  2. 在下面添加:
    [扩展差异]
    cmd.meld = # 如果 meld 不在您的路径中,您可能需要在此处输入脚本的绝对路径
  3. 保存 ~/.hgrc 文件。

现在,您可以使用一个新的 hg 子命令。在终端中输入 hg repo 文件夹:

user@machine:~$ cd myrepo
user@machine:~/myrepo$ hg meld

这将产生正确的融合,尊重.hgignore,善变的尊重自己)

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

问候。

于 2012-10-11T07:31:47.197 回答