可以更改Mercurial中的默认差异工具吗?
-
04-07-2019 - |
题
每次我执行 hg diff file.ext
时,我最终都会使用控制台差异应用程序。我想使用Kdiff3或WinMerge(我正在使用Windows)。
有没有办法改变它?我在Mercurial文档中找不到引用(我不是在谈论合并!)。
解决方案
我使用Mercurial内置扩展程序解决了这个问题...我只需将以下行添加到Mercurial.ini(在Mercurial文件夹中):
[extensions]
hgext.extdiff=
[extdiff]
cmd.vdiff = kdiff3
当我想使用kdiff3代替diff时,我只需要使用:
hg vdiff file.ext
其他提示
使用此配置
[extdiff]
cmd.kdiff3 =
我使用此命令查看差异:
hg kdiff
这显示了一个目录树,其中包含所有已更改的文件。单击文件以查看文件的差异。您可以在命令中添加文件参数以查看一个文件。
更多信息此处。
几分钟前我刚遇到这个问题;我刚安装它并将其路径(默认位于c:\ program files \ kdiff3)添加到我的系统PATH e.v.重新启动我的窗口以获取新路径,并且“hg kdiff3”刚刚工作。事实证明以下内容在我的基础“mercurial.ini”中。文件,这允许kdiff3适用于系统上的所有hg repos。
[extensions]
hgext.extdiff =
[extdiff]
cmd.kdiff3 =
[merge-tools]
kdiff3.args = $base $local $other -o $output
如果您正在寻找类似 git difftool
的内容,您无需键入文件名并查看所有已更改文件的差异,请将这些文件添加到〜/ .hgrc中
,然后运行 hg difftool
。
[extensions]
extdiff =
[extdiff]
cmd.vimdiff = vimdiff
[alias]
difftool = !for file in $(hg status -n); do hg vimdiff $file; done
不隶属于 StackOverflow