我在 mac OSX Snow Leopard 上安装了 Git,我尝试编辑我的 merge 和差异工具以使用 kdiff3 而不是 emerge。
但是当我尝试使用它时,它不会启动 kdiff 的 GUI 并让我使用基于 cmd 的界面。
我在 gitconfig 中的设置是:
[merge]
tool = kdiff3
[mergetool "kdiff3"]
cmd = /Applications/kdiff3.app/Contents/MacOS/kdiff3
args = $base $local $other -o $output
trustExitCode = false
[diff]
tool = kdiff3
[difftool "kdiff3"]
cmd = /Applications/kdiff3.app/Contents/MacOS/kdiff3
args = $base $local $other -o $output
trustExitCode = false
明明是少了什么,但我做错了什么?
最佳答案
最近的 Git 版本内置了对 kdiff3
的支持,因此无需使用通用 cmd 和 args 设置手动配置它.而是这样做:
$ git config --global merge.tool kdiff3
如果 kdiff3
不在您的 PATH 环境中,也可以:
$ git config --global mergetool.kdiff3.path /Applications/kdiff3.app/Contents/MacOS/kdiff3
这使得 git mergetool
启动 kdiff3
。注意 there is no way将 Git 配置为在有冲突的手动 merge 后自动启动您的 merge 工具。
如果您真的想了解 Git 如何在内部调用 kdiff3
,请查看 the built-in mergetool configuration for kdiff3 .
编辑:对于Beyond Compare 4 ,现在也支持 Mac OS X,只需将 kdiff3
替换为 bc3
(是的,“3”)并调整上述行中的路径。从 Git 2.2.0 开始,您将能够使用 bc
作为 bc3
的别名,这样您就不必关心版本号了。
关于macos - 如何配置 kdiff3 而不是 emerge 作为 git mergetool?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9776434/