git diff只在暂存区域使用信息吗?

时间:2015-08-18 18:54:23

标签: git

在git diff的git手册中,它说“这个表单是查看相对于索引所做的更改”。 git是否仅使用来自暂存区域的信息进行比较?是否准确地说,索引(临时区域)内部包含来自上一次提交快照的完整对象信息(以及此刻暂停的任何其他内容)?

git diff [--options] [--] [<path>...]
           This form is to view the changes you made relative to the index (staging area
           for the next commit). In other words, the differences are what you could tell
           Git to further add to the index but you still haven't. You can stage these
           changes by using git-add(1).

1 个答案:

答案 0 :(得分:0)

是:索引包含上次提交快照中的完整对象信息以及此刻暂存的其他内容。

否:这种格式的git diff使用的不仅仅是索引中的信息,它还使用工作树中的内容,比较两者。这种形式的diff特别将您的工作树与索引进行比较。它揭示了你尚未上演的所有变化。