GIT的组成部分(上)

简介: GIT的组成部分(上)

GIT由三个部分组成


image.png

  • 工作区
存放当前操作文件的本地文件系统目录
a、在工作区可随意添加或编辑文件
  • 暂存区
b、将修改后的文件添加到暂存区
  • 提交历史
c、并记录到提交历史


工作区


image.png


Git 可以把工作区中的文件处理压缩成一个提交对象
也能将取得的提交对象解包成文件同步到工作区中


暂存区


image.png

a、在工作区可能会同时更改多个完全不相干的文件
b、将它们分别放入暂存区
c、在不同的提交中加入提交历史
d、暂存区还用于合并冲突时存放文件的不同版本

image.png

a、刚初始化的Git仓库 暂存区是空的
b、然后会填充最近一次提交所对应的文件快照

git status

image.png

将工作区的文件与暂存区的文件快照进行对比
并提示我们有哪些做了修改的文件尚未加入暂存区

不同的区对应不同的实体

image.png

a、工作区有可见的文件系统目录
b、暂存区的实体是位于 .git 目录的 index 文件
c、提交历史通过 .git/objects 目录保存着所有提交对象

Index 文件


image.png

index 是一个二进制文件
包含着一个由路径名称、权限和 
blob 对象的 SHA-1 值组成的有序列表

元数据

包含
a、每个文件的创建时间
b、最后修改时间等元数据
c、指向实际的数据对象的引用
d、保存了一份完整的文件快照
因此可以通过对比SHA-1校验和
实现与工作区文件之间的快速比较

查看index中的内容

git ls-files --stage

image.png

相关文章
|
6月前
|
程序员 Linux 开发工具
Git基本概念、工作流程及与SVN的对比
Git基本概念、工作流程及与SVN的对比
124 0
|
6月前
|
存储 Linux 项目管理
Git管理与协作指南
Git管理与协作指南
|
Linux 测试技术 项目管理
Git:利用Git模拟企业级项目管理
Git:利用Git模拟企业级项目管理
|
开发工具 git
|
缓存 开发工具 git
对于git功能的探索与研究(二)
对于git功能的探索与研究(二)
76 0
|
JavaScript Linux BI
对于git功能的探索与研究(三)
对于git功能的探索与研究(三)
101 0
|
Linux Shell 开发工具
对于git功能的探索与研究(一)
对于git功能的探索与研究
72 0
|
缓存 安全 Unix
【Git】安装搭建与相关概念
【Git】安装搭建与相关概念
100 0
【Git】安装搭建与相关概念
|
开发工具 git 索引
|
开发工具 git
GIT的组成部分(下)
GIT的组成部分(下)
116 0
GIT的组成部分(下)