为了与互联网上发布的许多解决方案保持一致,我安装了 KDiff3 并如下修改了 .gitconfig 以使用它。尽管如此,当我在存储库中运行 git diff HEAD^ HEAD 来测试它时,我会得到一个由默认工具执行的差异。我在 Windows7-64 上运行 cygwin git。谁能解释为什么不调用 KDiff3?

[diff]
    tool = kdiff3
[merge]
    tool = kdiff3

[difftool "kdiff3"]
    path = \"D:/Program Files (x86)/KDiff3/kdiff3.exe\"
    keepBackup = false
    trustExitCode = false

[mergetool "kdiff3"]
    path = \"D:/Program Files (x86)/KDiff3/kdiff3.exe\"
    keepBackup = false
    trustExitCode = false

最佳答案

使用 git difftool 调用配置的差异工具,而不是 git diff

由于您似乎使用的是 cygwin git,但使用的是 native kdiff3,因此您可能还需要调用包装器脚本,而不是直接调用 kdiff3,以使用 cygpath 将路径从 cygwin 形式转换为 native 形式。

关于git - cygwin git下的KDiff3不会调用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15097053/

10-14 01:14