Git 3 - Git对象 The Git Object

每个对象都有三个属性:对象的类型、大小、内容。内容取决于对象的类型。

blob:存储数据的。

tree:像一个目录。指向了其他的目录。

commit:以某一个版本的状态写到数据仓库里面去。

用hash值作为blob的文件名

内容和名字分离,从各个地方降低磁盘的占用。

时间: 2024-10-12 18:23:53

Git 3 - Git对象 The Git Object的相关文章

git 错误 fatal: Not a valid object name: 'master'.

转载:http://blog.csdn.net/jackie_tsai/article/details/51587994 问题场景:新建git项目或刚为已存在项目创建了git仓库,想用git branch dev创建dev分支或用git checkout -b dev创建并切换到dev分支时报错. 原因:刚创建的git仓库默认的master分支要在第一次commit之后才会真正建立,否则就像你声明了个对象但没初始化一样 解决办法:先git add .添加所有项目文件到本地仓库缓存,再git co

浅谈GIT之底层对象理解

一.基本概述 首先定下一个基调就是Git并不是比SVN任何方面都好.SVN在某些功能或方面或者某些场景下也优于Git. 只是这篇文章讨论涉及到的点要与SVN相比,然后突出Git的某些方面的优越性而已. 对于Git而言,它本身是一个内容寻址文件系统,会将需要存储的东西按元数据meta data方式存储在一个KV数据库里面, 类似HashMap的这样的键值对结构,然后会按照内容生成相应的唯一hashcode作为内容的key, 而对于SVN而言,则是按照文件方式存储. 所以,看出一个特点就是如果需要的

Git 初学三(git对象与git重置)

对象 1. Git branch 是分支管理的主要命令,也可以显示当前的工作分支 2. Master 指向的是一个提交id(最新提交的),可以从任何开始建立一条历史跟踪路径,用一个文件指向这个链条的最新提交. 3. Git rev-parse 可以用于显示引用对应的提交ID. 4. Git cat-file blob HEAD: xx.txt 查看xx.txt内容 5. 补充linux知识:最常用用法:touch file 如果file存在,使用touch指令可更改这个文件或目录的日期时间,包括

Git详解之二 Git基础

来自:http://www.open-open.com/lib/view/open1328069733264.html Git 基础 读完本章你就能上手使用 Git 了.本章将介绍几个最基本的,也是最常用的 Git 命令,以后绝大多数时间里用到的也就是这几个命令.读完本章,你就能初始化一个新的代码仓库,做一些适当配置:开始或停止跟踪某些文件:暂存或提交某些更 新.我们还会展示如何让 Git 忽略某些文件,或是名称符合特定模式的文件:如何既快且容易地撤消犯下的小错误:如何浏览项目的更新历史,查看某

Git详解之九 Git内部原理

来自:http://www.open-open.com/lib/view/open1328070620202.html Git 内部原理 不管你是从前面的章节直接跳到了本章,还是读完了其余各章一直到这,你都将在本章见识 Git 的内部工作原理和实现方式.我个人发现学习这些内容对于理解 Git 的用处和强大是非常重要的,不过也有人认为这些内容对于初学者来说可能难以理解且过于复杂.正因如此我把这部分内容放在最后一章,你在学习过程中可以先阅 读这部分,也可以晚点阅读这部分,这完全取决于你自己. 既然已

Git专题--系统的学习Git之一

本文为整理自:伯乐在线 1.Git详解之一:Git起步 2.Git详解之二:Git基础 3.Git详解之三:Git分支 4.Git详解之四:服务器上的Git 5.Git详解之五:分布式Git 6.Git详解之六:Git工具 7.Git详解之七:自定义Git 8.Git详解之八:Git与其他系统 9.Git详解之八:Git与其他系统 Git详解之一:Git起步 起步 本章介绍开始使用 Git 前的相关知识.我们会先了解一些版本控制工具的历史背景,然后试着让 Git 在你的系统上跑起来,直到最后配置

Git专题--系统的学习Git之四

本文为整理自:伯乐在线 1.Git详解之一:Git起步 2.Git详解之二:Git基础 3.Git详解之三:Git分支 4.Git详解之四:服务器上的Git 5.Git详解之五:分布式Git 6.Git详解之六:Git工具 7.Git详解之七:自定义Git 8.Git详解之八:Git与其他系统 9.Git详解之九:Git内部原理 Git详解之八:Git与其他系统 Git 与其他系统 世界不是完美的.大多数时候,将所有接触到的项目全部转向 Git 是不可能的.有时我们不得不为某个项目使用其他的版本

Git专题--系统的学习Git之二

本文为整理自:伯乐在线 1.Git详解之一:Git起步 2.Git详解之二:Git基础 3.Git详解之三:Git分支 4.Git详解之四:服务器上的Git 5.Git详解之五:分布式Git 6.Git详解之六:Git工具 7.Git详解之七:自定义Git 8.Git详解之八:Git与其他系统 9.Git详解之九:Git内部原理 Git详解之四:服务器上的Git 服务器上的 Git 到目前为止,你应该已经学会了使用 Git 来完成日常工作.然而,如果想与他人合作,还需要一个远程的 Git 仓库.

【转】Git详解之一:Git起步

原文网址:http://blog.jobbole.com/25775/ 原文:<Pro Git> 起步 本章介绍开始使用 Git 前的相关知识.我们会先了解一些版本控制工具的历史背景,然后试着让 Git 在你的系统上跑起来,直到最后配置好,可以正常开始开发工作.读完本章,你就会明白为什么 Git 会如此流行,为什么你应该立即开始使用它.(查看Git详解系列的全部文章) 1.1 关于版本控制 什么是版本控制?我真的需要吗?版本控制是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统.在

Git Step by Step – (8) Git的merge和rebase

前面一篇文章中提到了"git pull"等价于"git fetch"加上"git merge",然后还提到了pull命令支持rebase模式,这篇文章就介绍一下merge和rebase之间有什么差别. 由于我们主要是想看看merge跟rebase之间的区别,这里就是用本地仓库的分支进行演示了. merge 其实在介绍分支的那篇文章中已经介绍过了一些分支merge的内容,这里就进行一些补充和总结. 下面我们基于本地一个仓库开始介绍,当前仓库的分支情