【发布时间】:2017-11-23 20:49:12
【问题描述】:
据我了解,当您git add 一个文件时,它只是在将文件添加到存储库之前暂存文件,但为什么我在提交之前可以看到它已添加到 git 存储库中?
例如,如果我创建一个新的 git 存储库并创建一个名为 foo 的新文件并将内容“hello world”添加到其中,然后 git add foo,我会在 objects 子目录中看到一个新项目在.git 文件夹内。我什至可以使用git cat-file -p 命令查看objects 文件中新文件的内容。
.git/objects 文件夹中究竟添加了什么?
从技术上讲,暂存文件有什么作用?比如在文件上运行git add 之后会发生什么步骤?如果我知道步骤,也许我会更好地理解它。
【问题讨论】:
-
我的猜测是,您看到的只是代表当前分支阶段的状态。但这并不意味着已经进行了实际的提交。
-
我已经编辑了答案以添加说明添加到 .git/objects 中的内容的步骤。
标签: git git-add .git-folder