为什么git difftool在发生冲突时不会打开vimdiff?

时间:2016-03-30 15:03:15

标签: git vimdiff git-difftool

阅读this后, 我通过在〜/ .gitconfig中添加以下行来配置git以使用vimdiff作为差异/合并工具:

[diff]
        tool = vimdiff
[merge]
        tool = vimdiff
[difftool]
        prompt = false
[alias]
        d = difftool

但是git difftool仍然只是打印diff(没有vimdiff)。有什么想法吗?

更新 似乎git difftool似乎工作正常,如果我在repo中有一些未提交的更改,即它按预期打开vimdiff。但是如果我在与冲突合并后git difftool,它就无法打开vimdiff。有什么想法吗?

2 个答案:

答案 0 :(得分:3)

好的,我找到了答案here。 如果发生冲突,必须使用git mergetool代替git difftool

答案 1 :(得分:1)

我不知道why。 但要修复它,请重置冲突文件的状态。

git status
    both modified: mymyfile.txt

git difftool myfile.txt #Fails
git reset myfile.txt

git status
    M myfile.txt

git difftool myfile.txt #should work