所以我看到了一些关于让 DiffMerge 成为 git 的 mergetooldifftool 的问题。基本上它归结为在您的 PATH.gitconfig 中有 DiffMerge (sgdm.exe),如下所示:

[diff]
    tool = DiffMerge
[difftool "DiffMerge"]
    cmd = 'C:/Program Files/SourceGear/Common/DiffMerge/sgdm.exe' "$LOCAL" "$REMOTE"
[merge]
    tool = DiffMerge
[mergetool "DiffMerge"]
    cmd = 'C:/Program Files/SourceGear/Common/DiffMerge/sgdm.exe' -merge -result="$MERGED" "$LOCAL" "$BASE" "$REMOTE"
    trustExitCode = true
    keepBackup = false

当我运行 git difftool file1 file2 时,没有任何 react 。没有错误代码,没有启动 DiffMerge。从 Git Bash 和 Windows 命令行,我可以运行 sgdm file1 file2 并且出现 DiffMerge。

我已将 cmd 中的 .gitconfig 修改为没有路径或扩展名(例如仅 sgdm),但仍然无济于事。

有没有人遇到过这个?是否有一些明显的东西我错过了?我觉得我错过了一些明显的东西。

最佳答案

我使用 SourceGear DiffMerge 的 .gitconfig 是:

[mergetool "diffmerge"]
cmd = \"C:\\program files\\sourcegear\\common\\diffmerge\\sgdm.exe\" --merge --result=$MERGED $LOCAL $BASE $REMOTE

(显然,如果你喜欢在另一边,翻转 $LOCAL$REMOTE。)

关于git - 如何将 DiffMerge 配置为在 Windows 7 或 Windows 2012 上使用 Git?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13868052/

10-13 05:35