从 Git GUI 启动 diff 工具

Launch diff tool from Git GUI

我正在探索使用 Git GUI 软件,它默认与 git 捆绑在一起。

根据未暂存的更改 window,我想 select 一个文件,然后在外部并排差异工具(如 kdiff)中启动它。

我不知道该怎么做。可以这样做吗?

谢谢

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

由于您的问题似乎没有答案,我建议的替代解决方案是使用外部工具显示并排差异(例如 meldkdiff3 或键入 git difftool --tool-help 以获得更多信息)从命令行如下所示:

git difftool --tool=meld [optional_filename]

我推荐 meld,因为它似乎是我发现的最直观的。

您可以通过以下方式实现此目的(我正在使用 Windows,因为 MAC 应该是类似的东西):

  1. 配置你的 git 以使用 diff 工具,例如 kdiff3,如果你设置正确,然后在你打开 CMD 并 cd 到你的 git 文件夹和 运行 git difftool -y "path to your changed file" KDiff3 将弹出比较 window。如果可行,请继续
  2. 现在您可以使用名称 diff 文件 和命令将自定义工具添加到 Git Gui git difftool -y "$FILENAME" 或者您可以直接编辑全局 git 配置文件

%userprofile%.gitconfig

并在最后添加

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

在那之后,在你的 Git Gui 中你会在工具菜单下看到 diff 文件 当你点击它时 KDiff3(这将是 [=37 的默认 difftool =]) 将弹出文件差异

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

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