GIT:如何配置KDiff3作为合并工具和diff工具?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (152)

最近我正在使用GitExtension2.46,但是具有相同的Git版本是1.9.4.msysgit.2。我愿意只使用Git命令,我卸载了GitExtenence,并安装了最新版本的GitandKDiff3。

当我进行合并并有冲突时,我运行以下命令:

$ git mergetool

然后我收到消息:

合并工具kDiff3不可用为“kDiff3”。

我想一定是在KDiff3的路上。

环境

  • 操作系统:Windows 10
  • GIT 2.6.1窗口
  • KDiff30.9.98(64位)

问题:

  • 在.gitconfig文件中为命令配置什么?$ git mergetool使用以下版本打开KDiff3GUI局部远距离底座合并有冲突的文件?
  • 如何配置它来使用它有差异的工具?
提问于
用户回答回答于

只需执行以下命令:

git config --global --add merge.tool kdiff3
git config --global --add mergetool.kdiff3.path "C:/Program Files/KDiff3/kdiff3.exe"
git config --global --add mergetool.kdiff3.trustExitCode false

git config --global --add diff.guitool kdiff3
git config --global --add difftool.kdiff3.path "C:/Program Files/KDiff3/kdiff3.exe"
git config --global --add difftool.kdiff3.trustExitCode false

使用trustExitCode选项取决于在diff工具返回时要做什么。从文献资料:

Git-扩散工具对每个文件分别调用一个diff工具。默认情况下,diff工具报告的错误将被忽略。使用-信任-退出-代码使Git-扩散工具当被调用的diff工具返回非零退出代码时退出。

用户回答回答于

应用这些命令之后,全局.gitconfig文件将有以下行(要加快进程,只需将它们复制到文件中即可):

[merge]
    tool = kdiff3
[mergetool "kdiff3"]
    path = C:/Program Files/KDiff3/kdiff3.exe
    trustExitCode = false
[diff]
    guitool = kdiff3
[difftool "kdiff3"]
    path = C:/Program Files/KDiff3/kdiff3.exe
    trustExitCode = false

扫码关注云+社区