我一直在玩添加和提交,并使用diff
来显示HEAD,索引和工作目录之间的差异。使用diff
,我的理解是它应该指定哪些文件已经更改,但是它应该指定文件之间的差异(例如,如果我在文件中写入" hello"当我运行+hello
时它应该说diff
(或类似的东西),并将它们进行比较)。
但是,当我使用diff
时,它只显示文件已更改;它无法显示这些变化是什么。为什么不显示文件中的个别更改 - 我添加的实际文本,我已删除的具体内容等等?如果diff
没有这样做,是否有可以使用的命令?
谢谢。
要运行完整测试,我删除了.git
并运行了git-init
,然后发现diff
未显示diff
的所有三种变体的差异({{1} },git diff
和git diff --cached
)。我使用的文件是git diff HEAD
。这是我的控制台,我将其格式化以便于阅读; t.txt
是Powershell提示输入的地方,我输入控制台;我写的评论是用>>
表示的。这是我的控制台输出:
>> # <comment>
答案 0 :(得分:2)
如果文件太小,git不知道如何解释它(测试或二进制):参见“Why does Git treat this text file as a binary file?”
您可以使用以下方法强制使用文本差异
git diff --text
(或者您可以configure it作为文字)