七.Git对象模型

本文深入解析Git中的四种核心数据对象:blob、tree、commit和tag。详细阐述了每种对象的作用,如blob用于存储文件数据,tree管理目录结构,commit记录项目状态,tag标识重要提交。同时介绍了对象的生成方式,基于SHA-1哈希算法确保数据唯一性和一致性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对象(objects)

类型:4种数据对象:blob tree commit tag

大小:对象数据内容的大小

文件名:如果SHA1算法生成

SHA1对象数据

  用40个字符的字符串用来表示对象名:(目录+名

字符串由对象内容做SHA-1哈希计算得来

通过比较SHA-1 值来比较两个文件的内容:

不同类型的对象用途

blob:存储文件数据,通常是一个文件

tree:类似一个目录,用来管理tree和blob

commit:指向一个tree,标记项目某个特定时间点状态

tag:用来标记某一个提交(commit)

blob对象

对象内容全是一种二进制格式数据

查看blob文件内容

git show SHA1

对象名

由哈希计算结果生成

tree 对象

包括:mode,对象类型,SHA1值,名字

一串指向blob或其他tree对象的指针

表示目录树的内容,内容之间的层次目录关系

commit对象

用来指向一个tree对象

组成

一个tree对象

父对象:一个项目必须有跟提交

作者:修改人名字,日期

提交者:实际创建提交的名字,日期

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值