5.Git三大对象类型

git三大对象类型

git三大对象类型分别是commit、tree、blob
commit顾名思义是提交的意思,它在git仓库中以快照的形式保存,代表着项目不同的时间节点所对应的内容,Git 可以将项目恢复到任意一个快照
tree代表着当前快照内的组织结构,也可看作是文件夹目录
blob代表着当前快照内的具体文件对象,git存储方式是以文件内容作为判断,即不同名的相同内容的两个文件只会占用git一份存储空间
思考题:新建的Git仓库,有且仅有1个commit,仅仅包含 /doc/readme ,请问该commit中一共包含几个对象,内含多少个commit,多少个tree,多少个blob?
答案是4个对象,1个commit,2个tree,1个blob
git的对象类型的层级关系与linux文件的目录结构十分相似,每个commit可以看作是一个整体,commit本身是一个commit对象,包含着一个tree对象(/),从目录和对象二者结合的角度看,该commit包含/doc/readme。其中,commit看作是/(根目录),同时他是一个tree对象,tree内包含着目录doc/;doc/是二级目录,同时他也是一个tree对象,tree内包含着文件readme;readme是一个文件,同时他也是一个blob对象

原文地址:https://blog.51cto.com/13622854/2360159

时间: 2024-10-29 22:12:05

5.Git三大对象类型的相关文章

git对象类型及存储结构讲解

本文git版本1.9.6 一.git的基本对象类型 二.查看git对象信息 三.理解git存储结构 1.Git中有四种基本对象类型,组成了Git更高级的数据结构: blobs每个blob代表一个(版本的)文件,blob只包含文件的数据,而忽略文件的其他元数据,如名字.路径.格式等. trees每个tree代表了一个目录的信息,包含了此目录下的blobs,子目录(对应于子trees),文件名.路径等元数据.因此,对于有子目录的目录,git相当于存储了嵌套的trees. commits每个commi

MySql学习 (一) —— 基本数据库操作语句、三大列类型

在使用MySql的时候,基本都是用图形化工具,如navicat.最近发现连最基本的创建表的语法都快忘了... 所以,想要重新系统性的学习下MySql,为后面学习MySql的一些高级查询,MySql性能和SQL语句的优化等打个基础. 用博客来记录下学习的过程,方便以后查阅和加强记忆.有错误的地方还请指出! 一.MySql的基本操作命令 注: <>表示参数.[]表示可选项 连接数据库:mysql> mysql -u<username> -p<password>; 显示

hibernate 大对象类型的hibernate映射

基本知识: 在 Java 中, java.lang.String 可用于表示长字符串(长度超过 255), 字节数组 byte[] 可用于存放图片或文件的二进制数据. 此外, 在 JDBC API 中还提供了 java.sql.Clob 和 java.sql.Blob 类型, 它们分别和标准 SQL 中的 CLOB 和 BLOB 类型对应. CLOB 表示字符串大对象(Character Large Object), BLOB表示二进制对象(Binary Large Object) Mysql

获取对象类型

获取对象类型 由 王巍 (@ONEVCAT) 发布于 2015/05/27 我们一再强调,如果遵循规则的话,Swift 会是一门相当安全的语言:不会存在类型的疑惑,绝大多数的内容应该能在编译期间就唯一确定.但是不论是 Objective-C 里很多开发者早已习惯的灵活性,还是在程序世界里总是千变万化的需求,都不可能保证一尘不变.我们有时候也需要引入一定的动态特性.而其中最为基本但却是最为有用的技巧是获取任意一个实例类型. 在 Objective-C 中我们可以轻而易举地做到这件事,使用 -cla

ORM进阶之Hibernate 的三大对象 如何搭建

我们在上一篇博客中讲到了如何搭建一个Hibernate框架, 提到Hibernate我们就不得不说他的三大对象,Configuration,SessionFactory , Session .下边我们就分别来解释一下这三大对象! Configuration对象 Configuration类用来管理我们的配置文件的信息的,通过它,我们可以通过创建一个configuration实例来管理相应的配置文档,但是通常我们只创建一个configuration实例.创建过程Configuration cfg

ORM进阶之Hibernate 的三大对象

ORM进阶之 ORM简介 ORM进阶之Hibernate 简介及框架搭 ORM进阶之Hibernate 的三大对象 我们在上一篇博客中讲到了如何搭建一个Hibernate框架, 提到Hibernate我们就不得不说他的三大对象,Configuration,SessionFactory , Session .下边我们就分别来解释一下这三大对象! Configuration对象 Configuration类用来管理我们的配置文件的信息的,通过它,我们可以通过创建一个configuration实例来管

&lt;Python内置对象类型&gt;

核心数字类型: 数字:int,long,float,complex,bool 字符:str,unicode 列表:list 字典:dict 元组:tuple 文件:file 其他类型:集合(set),frozenset,类型,None 其他文件类工具:pipes,fifos,sockets. 类型转换: str(),repr()或format():将非字符型数据转换成字符: int():转换为整数 float():转换为浮点数 list(x):可以把字符串x转换为列表, tuple(x):将字符

JAVA 【引用类型】和【对象类型】在【继承】中的异同

介绍 JAVA [引用类型]和[对象类型]在[继承]中的异同.这个问题自己整理过N次.也被人当菜鸟问过N次.所以,在此简单整理一下.以供大家分享. 在继承关系中.一般成员变量是依据引用类型 在继承关系中.静态成员变量是依据引用类型 在继承关系中,一般方法是依据对象类型 在继承关系中,静态方法是依据引用类型 注意 静态成员变量,静态方法是基于类的,本文为了測试观察.所以.会用对象去引用静态成员变量和静态方法. Super Class: package shuai.study.inherit; pu

Python中的对象类型的初步介绍

一:介绍 1.为什么使用内置对象 对象类型是语言的一个部分 内置对象构成了每个python程序的核心部分 2.核心数据类型 数字 字符串 列表 字典 元组 文件 集合 其他类型 编程单元类型 与实现相关的类型 二:数字 1.**是乘方 2.math数学模块 3.random模块 三:字符串 1.介绍 字符串是单个