我正在尝试将 DiffMerge 配置为 Git 中的 difftool,但没有成功。这是我的相关部分.gitconfig文件(未显示的其他设置仅供用户使用)。
[diff]
tool = diffmerge
[difftool "diffmerge"]
cmd = \"C:\\Program Files\\SourceGear\\Common\\DiffMerge\\sgdm.exe\" \"$LOCAL\" \"$REMOTE\"
每当我打电话git difftool
在 powershell 命令行中,冲突直接显示在 powershell 界面下方,而不是按预期显示在 diffmerge 中。我知道 git 正在获取这些设置,因为当我检查全局配置时,我会从配置文件中获得设置:
git config --global --get-all difftool.diffmerge.cmd
"C:\Program Files\SourceGear\Common\DiffMerge\sgdm.exe" "$LOCAL" "$REMOTE"
我正在运行 powershell 而不是 git bash。这是因为我为 Windows 安装了 github,它提供了 powershell 作为 git 的 shell,所以我还不需要安装 bash。 Git 版本是 1.7.11.msysgit.0。
我被搞混了difftool
and mergetool
。我需要使用mergetool
解决与可视化界面的冲突并保存结果。difftool
只向您展示差异。看git-mergetool-vs-difftool https://stackoverflow.com/questions/11197465/git-mergetool-vs-difftool为了澄清。
我将此部分添加到我的.gitconfig
并打电话给git mergetool
改为从 powershell 命令行。快乐的时光。
[merge]
tool = diffmerge
[mergetool "diffmerge"]
cmd = \"C:\\Program Files\\SourceGear\\Common\\DiffMerge\\sgdm.exe\" --merge --result=\"$MERGED\" \"$LOCAL\" \"$BASE\" \"$REMOTE\"
trustExitCode = true
keepBackup = false
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)