来自.gitconfig的mergetool被忽略了?

时间:2011-09-15 17:26:12

标签: git beyondcompare git-config

git config --global mergetool.bc3 "\"c:/program files (x86)/beyond compare 3/bcomp.exe\" \"$LOCAL\" \"$REMOTE\" \"$BASE\" \"$MERGED\""

git mergetool

/usr/lib/git-core/git-mergetool--lib: line 116: bcompare: command not found

这非常奇怪,因为./.git/config~/.gitconfig看起来都是正确的。两者都没有列出bcompare的条目。可以从.git/config~/.gitconfig以外的任何地方git读取或存储配置吗?

2 个答案:

答案 0 :(得分:15)

看起来与this guy的问题相同。看来bc3是内置工具名称,git不允许覆盖该名称。尝试使用bc3以外的名称。

我使用了“BeyondCompare3”

[mergetool "BeyondCompare3"]
    path = C:/Program Files/Beyond Compare 3/bcomp.exe
    cmd = \"C:/Program Files/Beyond Compare 3/bcomp.exe\" \"$LOCAL\" \"$REMOTE\" \"$BASE\" \"$MERGED\"

答案 1 :(得分:0)

如果您需要覆盖合并工具的路径,则只需设置变量mergetool.<tool>.path

自定义合并工具可以使用mergetool.<tool>.cmd指定(Beyond Compare 3不需要),但mergetool.<tool>形式的变量对git mergetool没有意义。如果您被指示从文档中尝试这个,也许您可​​以说明哪里可以解决这个问题。