Git本质
- 一套内容寻址的文件系统
版本库中文件的三种状态
- 已修改:modified
- 已暂存:staged
- 已提交:commit
一个仓库
二个引用
三个工作区
- 工作目录
- 暂存区域
- 版本库(仓库)
工作区下的文件状态
- 未被追踪:untracked
- 被追踪:tracked
Git 索引(index)
什么是索引
- 存储了一个tree对象所有信息的二进制文件
- 里面有很多条目,分别指向不同blob,tree哈希值
索引是一种暂存区域(staging area)
- 我们文件修改内容并没有保存到该区域
- 索引实际上是一个包含文件索引的目录树、
. 记录了文件名和文件状态信息(时间戳,文件长度等)
. 文件的内容并没有保存到其中(文件内容保存在objects中)
. 文件索引建立了文件和对象库中对象之间的关联
四个对象
blob
tree
commit
tag
本文深入解析Git的本质,包括其作为内容寻址的文件系统特性,版本库中文件的三种状态,以及工作区、暂存区域和版本库的概念。详细阐述了Git索引的作用和构成,以及四种基本对象:blob、tree、commit和tag。
1万+

被折叠的 条评论
为什么被折叠?



