如果我已经知道在mercurial repo中修改了一个文件,
有没有办法在命令行中启动diff工具来显示工作拷贝和提交之间文件的可视差异。
小背景:
我正在尝试为qt添加一个外部工具,它将帮助我在diff工具中查看当前打开的文件的工作副本更改,只需单击一个按钮,而不必在tortoisehg中打开repo,等待它加载(大型repo,很多时间),然后右键单击修改的文件以选择“查看可视差异”
对于那些不熟悉这个设置的人来说,
我有:hg repo和修改过的文件的完整路径,
我需要:一个linux命令来打开diff工具中文件的工作拷贝和最后提交之间的差异
我的设置:
linux、qt、tortoisehg、sourcegear diffmerge
这可能吗?
最佳答案
我假设您能够编辑其中一个配置文件以启用扩展名,例如.hgrc文件。如果是这样,则可以添加以下内容(并确保diffmerge的路径正确):
[ui]
merge = diffmerge
[extensions]
hgext.extdiff =
[extdiff]
cmd.diffmerge = /usr/bin/diffmerge
[merge-tools]
diffmerge.executable = /usr/bin/diffmerge
diffmerge.args = -merge -result=$output -t1="Local Version" -t2=$output -t3="Other Version" -caption=$output $local $base $other
diffmerge.binary = False
diffmerge.symlinks = False
diffmerge.gui = True
由于您只要求将其添加到文件之间的差异,而不要求合并,因此您可能只需要以下部分(不包括合并函数):
[extensions]
hgext.extdiff =
[extdiff]
cmd.diffmerge = /usr/bin/diffmerge