git diff:--cached和--staged有什么区别?

59

比较分阶段与最后一次提交:

git diff --cached
git diff --staged

这两个命令生成的结果是一样的,对吗?


4
尊重所有答案,我仍然建议阅读gitcli手册页(运行git help cli以显示它),该页面解释了这些选项的差异。 这是Git的一个鲜为人知的事实--它实际上附带一组文档页面,解释术语、基础知识,并甚至包含教程和一套常见工作流的说明。可以从git help git开始学习;-) - kostix
3个回答

64

git diff 的文档中说 "--staged--cached 的同义词",所以是的。


10

从文档中得知——--staged是--cached的同义词。


7

git-scm.com/docs/git-diff(请参见粗体文本):

git diff [<options>] --cached [<commit>] [--] [<path>…​]

这个命令用于查看你为下一次提交而暂存的更改相对于指定的 <commit> 的变化。通常,您会想与最新的提交进行比较,所以如果您没有提供目标提交,它将默认使用 HEAD。如果 HEAD 不存在(例如未出现的分支)并且未提供目标提交,则显示所有暂存的更改。 --staged 是 --cached 的同义词


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接