2012-06-19 123 views
8

我想让git diff在Windows 7 64位上运行。当我从Windows命令提示符下运行以下命令:git diff和git difftool什么也不做,并且没有输出

C:\temp\mygrit>git diff 

C:\temp\mygrit>git difftool 

我没有得到任何输出,并且无需外接程序启动。这里是我的.gitconfig文件:

[diff] 
    tool = bc3 
[difftool] 
    prompt = false 
[difftool "bc3"] 
    cmd = \"c:/program files (x86)/beyond compare 3/bcomp.exe\" \"$LOCAL\" \"$REMOTE\" 

我得到相同的结果,如果我删除的.gitconfig所有这些行。

任何想法是怎么回事?

回答

10

好的,简单的答案。 git diff的默认行为是显示所有已修改但未暂存的文件。如果你没有修改过的文件,那么就没有输出。

git difftool使用git diff的输出,所以如果没有来自前一命令的输出gif difftool也不会做任何事情。

解决方案:更改一些文件,但不要阶段,重新运行命令。如果你的配置文件有问题,他们会显示出来。

+2

'git diff --cached(或--staged)':比较已登台/索引的文件。 –

+2

['git diff --staged':比较正在播放的文件。](http://roman.st/Article/What-makes-Git-Difficult-someone-coming-Mercurial) –