我使用git diff master --name-only检查了已更改文件的名称,并收到了类似于以下内容的更改结果:
really/long/path/to/file.java
really/long/path/to/fileNumber2.java
really/long/path/to/fileNumber3.java
really/long/path/to/fileNumber4.java
在此之后,我运行了git diff
而没有任何额外的参数,并且在代码库中得到了一大堆不是来自这些文件的更改。我的问题是,简单git diff
的比较是什么?
我的猜测是:它显示了最新提交和之前提交之间的差异,但man git-diff
和一些阅读并没有让我更清楚。
答案 0 :(得分:1)
正如the documentation所解释的那样,只是在没有指定任何修订版的情况下调用git diff
将显示相对于索引的更改,即中未出现的更改中出现的所有挂起更改运行git status
时的“列表。
<强>
git diff [--options] [--] [<path>…]
强>此表单用于查看您对索引所做的更改(下一次提交的暂存区域)。换句话说,差异就是你可以告诉Git进一步添加到索引但你还没有。您可以使用git-add[1]暂存这些更改。