为了与互联网上发布的许多解决方案保持一致,我安装了 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/