如何将SourceGear DiffMerge配置为Github Windows的合并工具和差异工具?

11
我知道我们应该使用"git mergetool"命令来解决冲突,"git difftool"命令来比较更改。但是如何在GitHub Windows中设置SourceGear DiffMerge作为github mergetool和difftool呢?

这里已经有答案了:https://dev59.com/U3RC5IYBdhLWcg3wD8tV - jAvA
@Java:感谢分享链接。但是那并没有帮助我,我尝试了那些命令来配置“SourceGear DiffMerge”,但是它没有起作用。我找到了解决方案并在下面提到。谢谢! - vineel
1个回答

22

我发现两种方法可以将 "SourceGear DiffMerge" 配置为 Github Windows 中的差异工具和合并工具。

命令提示符窗口中执行以下命令,将更新您的 .gitconfig 文件以配置 Git 使用 DiffMerge:

git config --global diff.tool diffmerge
git config --global difftool.diffmerge.cmd "C:/Program\ Files/SourceGear/Common/DiffMerge/sgdm.exe  \"$LOCAL\" \"$REMOTE\""

git config --global merge.tool diffmerge
git config --global mergetool.diffmerge.trustExitCode true
git config --global mergetool.diffmerge.cmd  "C:/Program\ Files/SourceGear/Common/DiffMerge/sgdm.exe  -merge  -result=\"$MERGED\" \"$LOCAL\" \"$BASE\" \"$REMOTE\""

[或者]

将以下内容添加到你的 .gitconfig 文件中。该文件应该在你的 home 目录下,路径为 C:\Users\UserName:

[diff]
    tool = diffmerge
[difftool]
    prompt = false
[difftool "diffmerge"]
    cmd = C:/Program\\ Files/SourceGear/Common/DiffMerge/sgdm.exe \"$LOCAL\" \"$REMOTE\"

[merge]
    tool = diffmerge
[mergetool]
    keepBackup = false
[mergetool "diffmerge"]
    trustExitCode = true
    cmd = C:/Program\\ Files/SourceGear/Common/DiffMerge/sgdm.exe -merge -result=\"$MERGED\" \"$LOCAL\" \"$BASE\" \"$REMOTE\"
重新打开命令提示符并尝试。
example: git difftool */test.java

我一直在设置新的配置文件,以至于我已经把它变成了一个shell脚本! - Sridhar Sarnobat

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接