从Git GUI启动差异工具

3
我正在探索使用Git GUI软件,该软件是与Git捆绑在一起的默认工具。
从未暂存更改窗口中,我想选择一个文件,然后在外部的并排差异工具(如kdiff)中启动它。
我无法弄清楚如何做到这一点。是否可能实现这个功能?
谢谢。
2个回答

9
你可以使用以下方法实现这个功能(我正在使用Windows,对于Mac应该类似):
  1. 配置你的git使用diff工具,例如kdiff3。如果你正确设置了它,那么在打开CMD并进入到git文件夹后运行git difftool -y "path to your changed file"命令时,KDiff3将弹出比较窗口。如果这样做可以正常工作,继续下一步。
  2. 现在你可以添加自定义工具到Git Gui中,名称为diff file,命令为git difftool -y "$FILENAME",或者直接编辑全局git配置文件:

%userprofile%.gitconfig

并在结尾处添加以下内容:

[guitool "diff file"]
    cmd = git difftool -y \"$FILENAME\"
    noconsole = yes
    needsfile = yes

接下来,在您的Git Gui中,您将在“工具”菜单下看到差异文件,当您单击它时,KDiff3(这将是git的默认差异比较工具)将弹出以显示文件差异。

使用相同的方法,您可以从Git Gui中编辑所选项目-为此,请在全局配置部分中添加

[guitool "file Edit"]
    cmd = \"C:\\Program Files (x86)\\Notepad++\\notepad++.exe\" \"$FILENAME\"
    noconsole = yes
    needsfile = yes

2

很不幸,git gui似乎没有在默认窗口中提供您查看未暂存更改的选项,其中差异是逐行显示的。为此,存在一种名为git difftool的特定单独命令。

由于似乎没有对您的问题给出肯定答复,我建议另一种解决方案是使用外部工具显示并排差异(例如meldkdiff3,或键入git difftool --tool-help获取更多信息),如下所示:

git difftool --tool=meld [optional_filename]

我推荐meld,因为它似乎是我找到的最直观的工具。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接