git diff HEAD ^ HEAD <filename>不显示</filename>

时间:2014-02-08 00:01:49

标签: git

我试图显示最后一次提交和之前提交之间的差异:

git diff HEAD^ HEAD <filename>

但没有显示任何内容。事实上,我知道这两个提交之间存在差异。

我做错了什么,我该如何纠正?

P.S。:我觉得之前已经讨论了很多次,但不知何故找不到任何有用的参考。

2 个答案:

答案 0 :(得分:4)

如果特定文件在HEAD^HEAD之间没有变化,则不会显示任何内容。

请注意,使用git1.8.5 +,您可以执行:

git diff @^ -- afile

@表示HEAD


git log -p -- aFile会让所有SHA1都对该文件发生更改 (-p用于显示差异)


要查看文件的最后修改(无需处理HEAD或其他SHA1):

git log -1 -p -- aFile

答案 1 :(得分:0)

您在HEAD中在特定文件中所做的更改显然不在HEAD中,否则它根本不会成为提交的一部分。

查看这些更改的命令是:git show HEAD -- <filename>