详细解释Git教程的工作区、临时存储和版本库

Git工作区、临时存储和版本库



基本概念



让我们首先了解Git工作区、临时存储和版本库的概念。



工作区:这就是你可以在电脑上看到的。

临时存储:英语被称为阶段,或索引。它通常存储在目录目录下的索引文件中。

版本库:工作区有一个隐藏的目录Git,它不是工作区,而是Git的版本库。



下面的图显示了临时存储区和工作区版本库之间的关系,版本库。



工作区在图的左边,右边是版本库,在版本库中标记为索引的区域是平台(索引),而主是由主分支表示的目录树。



在这张图中,我们可以看到头实际上是指向主分支的光标,因此,在说明的命令中出现的头部位置可以用主命令替换。



图中对象标识的区域是Git的对象库,它实际上位于目录中,其中包含创建的各种对象和内容。

当更改工作区域(或添加)文件执行Git命令时,缓冲树将被更新,同时修改工作区域(或添加)文件的内容被写入库中的一个新对象,并且对象的索引被记录在该区域的一个临时ID中。



当提交操作(Git提交)执行时,临时存储区域的目录树被写入版本库(对象库),主分支将进行相应的更新,即由主指令所指向的目录树是提交时临时存储区域的目录树。



当执行Git重置头命令时,临时存储区域的目录树将被重写,由主分支指向的目录树替换,但工作空间不会受到影响。



当执行Git RM -缓存命令时,该文件将直接从临时存储区域中删除,工作区不会发生更改。



当执行Git校验或Git校验命令时,工作区的文件将替换为临时存储区中的所有或指定文件。此操作是危险的,它清除未添加到工作区临时存储区中的更改。



执行git checkout头或git checkout头命令时,全部或部分在主分支文件头点来代替文件的临时存储区和工作区。这个命令也很危险因为它将不仅在工作区的未提交的改变,而且在临时存储区的未提交的更改。