Git diff没有列出对文件的具体更改?

时间:2015-11-07 13:03:54

标签: git

我一直在玩添加和提交,并使用diff来显示HEAD,索引和工作目录之间的差异。使用diff,我的理解是它应该指定哪些文件已经更改,但是它应该指定文件之间的差异(例如,如果我在文件中写入" hello"当我运行+hello时它应该说diff(或类似的东西),并将它们进行比较)。

但是,当我使用diff时,它只显示文件已更改;它无法显示这些变化是什么。为什么不显示文件中的个别更改 - 我添加的实际文本,我已删除的具体内容等等?如果diff没有这样做,是否有可以使用的命令?

谢谢。

要运行完整测试,我删除了.git并运行了git-init,然后发现diff未显示diff的所有三种变体的差异({{1} },git diffgit diff --cached)。我使用的文件是git diff HEAD。这是我的控制台,我将其格式化以便于阅读; t.txt是Powershell提示输入的地方,我输入控制台;我写的评论是用>>表示的。这是我的控制台输出:

>> # <comment>

1 个答案:

答案 0 :(得分:2)

如果文件太小,git不知道如何解释它(测试或二进制):参见“Why does Git treat this text file as a binary file?

您可以使用以下方法强制使用文本差异

git diff --text

(或者您可以configure it作为文字)