特定文件类型的 TortoiseHg extdiff

TortoiseHg extdiff for certain file type

我想在我的 TortoiseHg 中使用 TortoiseSVN 的视觉差异工具。我发现我可以像这样在 .ini 文件中使用 extdiff:

[extdiff]
cmd.tortoiseIdiff = C:\Program Files\TortoiseSVN\bin\TortoiseIDiff.exe
opts.tortoiseIdiff = /left:"$parent" /lefttile:"$plabel1" /right:"$child" /righttitle:"$clabel" /showinfo

但是现在,当我将它设置为默认时,我的所有文件都会尝试使用 TortoiseIDiff.exe 打开。我怎样才能告诉 TortoiseHg 只在某些文件扩展名上使用它?

  1. 您现在可以在没有 extdiff 扩展的情况下使用特定于扩展的差异
  2. 必须将 TortoiseIDiff 配置为仅图像差异,而非全局

为了在 TortoiseHG 中正确使用 TortoiseIDiff,您需要

  • 将 TortoiseIDiff 定义为额外的自定义 diff|merge 工具(请咨询 hgrc.d\MergeTools.rc 以获取详细信息和示例):您必须在全局 merurial.ini 或 repo 的自己的 [merge-tools] 部分中添加定义.hgrc
  • [diff-patterns] 部分中的图像文件分配此差异工具(参见 hgrc.d\MergePatterns.rc

改为添加 [extdiff]:

[merge-tools]
imgdiff.priority=-100
imgdiff.regkey=Software\TortoiseSVN
imgdiff.regname=Directory
imgdiff.regappend=\bin\TortoiseIDiff.exe
imgdiff.gui=True
imgdiff.diffargs=/left:"$parent" /lefttitle:"$plabel1" /right:"$child" /righttitle:"$clabel" /showinfo

[merge-patterns]
**.png = imgdiff

[diff-patterns]
**.png = imgdiff