我在Atlassian上阅读以下内容时偶然发现: https://www.atlassian.com/git/tutorials/saving-changes/git-diff
serialize_precision = -1
此示例在被调用时作用域为./path/to/file,它将进行比较 工作目录中针对索引的特定更改, 显示尚未上演的更改。默认情况下git diff将 对HEAD执行比较。在示例中省略HEAD 上面的git diff ./path/to/file具有相同的效果。
我发现在某些情况下它们将是不一样的,如果暂存了我拥有的文件,则git diff不会发生任何变化。但是对于git diff HEAD,它将与head而不是index进行比较。那么下面的句子错了吗?
默认情况下,git diff将对HEAD执行比较
因为它与索引进行了比较
答案 0 :(得分:2)
我对您的问题的理解是,文档中给出的示例假设阶段是空的,尤其是与工作目录中的阶段相比,没有阶段化所讨论文件的版本。
在这些假设下,HEAD
之后出现的git diff
选项是不必要的,因为在这种情况下,省略HEAD
将导致舞台被使用。而且这两个都应该相同,因此HEAD
因此成为可选的,至少在此示例中如此。