Git存储原理——树对象

本文介绍了Git的树对象,它用于解决文件名存储和组织文件。树对象类似UNIX文件系统,包含多条记录,可以嵌套。通过`update-index`等命令构建树对象并将其添加到暂存区。`write-tree`命令将暂存区的快照保存为树对象,存入版本库。树对象代表项目的一个版本,而git对象存储单个文件的版本。
摘要由CSDN通过智能技术生成
什么是树对象

树对象能解决文件名保存的问题,也允许我们将多个文件组织到一起。Git 以一种类似于 UNIX 文件系统的方式存储内容。所有内容均以树对象和数据对象(git 对象)的形式存储,其中树对象对应了 UNIX 中的目录项,数据对象(git 对象)则大致上对应文件内容。一个树对象包含了一条或多条记录,一个树对象也可以包含另一个树对象。

构建树对象

可以通过 update-index;write-tree 等命令来构建树对像并塞入到暂存区
为了演示树对象的构建,我们先准备一个空的git仓库,然后准备一个test.txt文件并创建该文件的一个git对象:
在这里插入图片描述
执行git update-index --add --cacheinfo 100644 fbb2ff04e2cae17293a83c5e83af505f62cd13d1 test.txttest.txt创建首个版本,并放到暂存区。由于项目中只有这个文件,因此也是项目的首个版本。
在这里插入图片描述
命令解释:
update-index:为项目版本创建暂存区;
–add:因为此前该文件并不在暂存区中,首次需要--add

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值