我正在尝试将命令git difftool -d
用于文件夹diff。
命令get diff list successfully(在FileMerge.app中显示)。但是当我尝试打开每个diff文件时。我收到file does not exist
错误。
输出日志:
$ git difftool -d
merge tool candidates: opendiff kdiff3 tkdiff xxdiff meld kompare gvimdiff diffuse ecmerge p4merge araxis bc3 codecompare emerge vimdiff
图片:
我在mac OS X 10.9上使用git版本1.8.1.1。 感谢。
答案 0 :(得分:3)
问题是opendiff命令返回,导致difftool删除临时目录和您要比较的所有文件。经过大量的搜索,我发现了这一点,基本上你必须保持该opendiff运行,直到FileMerge退出。 将您的git配置更改为:
[diff]
tool = opendiff
[difftool]
prompt = false
[difftool "opendiff"]
cmd = /usr/bin/opendiff \"$LOCAL\" \"$REMOTE\" -merge \"$MERGED\" | cat
答案 1 :(得分:1)
通过输出更少或使用睡眠来防止opendiff退出
请将以下行放入.gitconfig
[difftool "opendiff"]
cmd = /usr/bin/opendiff \"$LOCAL\" \"$REMOTE\" -merge \"$MERGED\" | less