我正在读这本书Pro Git, second edition。
它说,第21页:
git diff --staged
此命令将您的暂停更改与上次提交进行比较。
以及稍后的页面(不解释缓存的含义)
git diff --cached
看看到目前为止你上演了什么。
现在我有点迷失了。分段和缓存有什么区别?
答案 0 :(得分:5)
他们是同义词;来自Git docs:
此表单用于查看您为下次提交相对于已命名的更改。通常,您希望与最新提交进行比较,因此如果您不提供,则默认为HEAD。如果HEAD不存在(例如未出生的分支)并且没有给出,则显示所有分阶段的变化。 --staged是--cached的同义词。
答案 1 :(得分:3)
“暂存区”或“缓存”都是Git中大多数其他上下文中具有其他名称的同义词的同义词:索引。
当您使用git add
(或git rm
)添加更改时,索引是分阶段的更改区域。这是您执行git commit
时提交的一组更改。
所有三个名称通常都是同义词,但“{1}} --cached
参数中很少使用”缓存“。