git对象(简单了解)

每次提交都有tree、parent、author、committer

➜  demo git:(master) ✗ git log --pretty=raw --graph 50bceb7c6f5
* commit 50bceb7c6f598c258a1502f25f7bc08220635aea
| tree 9d1cf4f29cf360391811eb69f8eeb6859a029c11
| parent 81b09ecc5f2f0222ede2b474efb1d8da9b04714e
| author dataiyangu <32248827@qq.com> 1552315059 +0800
| committer dataiyangu <32248827@qq.com> 1552315059 +0800
|
|     a
|
* commit 81b09ecc5f2f0222ede2b474efb1d8da9b04714e
| tree 86761909e740889c54721914f2e942218982991f
| parent 1e20fe7563a4b4bf8a091fe6c55ca9f32786224c
| author dataiyangu <32248827@qq.com> 1552277904 +0800
| committer dataiyangu <32248827@qq.com> 1552277904 +0800
|
|     add
|
* commit 1e20fe7563a4b4bf8a091fe6c55ca9f32786224c
| tree 529ca55c0571956f6e1b1290a77675ba72a64938
| parent ed97a5e3d4ae753183e6a796625dfca1f83c1f61
| author dataiyangu <32248827@qq.com> 1552277753 +0800
| committer dataiyangu <32248827@qq.com> 1552277753 +0800
|
|     a

–pretty=raw没有加任何加工的,原先是什么就是什么,参数还可以指定为oneline、short、full、fuller、emial、raw、farmat等

–graph 50bceb7c6f5展现对象之间的关系

左边的竖线表示这里是一个链表的关系,通过parent来连接,可以看到上面代码中第一个parent的号就是第二个的commit号,最早的那次提交是没有parent的,这也就是为什么git切换分支特别快。

tree类似于目录a文件夹下有b和c,c下有d和e,a和c都是tree,有点递归的感觉。

对象是存在哪里的?

就是存在版本库的objects目录中,通过hash值前两位作为文件夹,后几位作为具体的对象名

head和master分支

head就是一个类似指针的概念,指向master,head就是master,指向dev,head就是dev,就是git branch前面的*

简而言之head就是当前分支,当前分支是哪个分支,head就指向哪个分支。

➜  demo git:(master) ✗ git branch
  b
* master

上面的hash值怎么来的?

sha1sum(这个算法能得到全球唯一的一个值)

例如:

➜  demo git:(master) ✗ printf git | sha1sum

输出git的sha1sum算法的值

git分布式版本控制系统权威指南学习笔记(三):简单了解git对象、head以及sha1sum的更多相关文章

  1. git分布式版本控制系统权威指南学习笔记(六):git reset、get stash、git checkout总结

    文章目录 1. 概述 2. 如何把修改暂存起来,留着以后使用? 2.1 使用场景 2.2 git stash 暂存进度 2.3 查看进度 2.4 恢复进度 3. 如何撤销工作区的修改? 4. 如何把暂 ...

  2. git分布式版本控制系统权威指南学习笔记(一):配置文件、简单流程和小问题

    文章目录 git配置文件简介 git config各种命令 配置级别: 用户信息 文本编辑器 差异分析工具 配置命令别名 公钥 git协同流程 简单流程 初始化版本库 提交至缓存区 查看状态 提交分支 ...

  3. git分布式版本控制系统权威指南学习笔记(四):git reset

    文章目录 git reset目录树重写 git reset 重置 git reset目录树重写 git reset --soft 暂存区工作区不变 git reset --hard git reset ...

  4. git分布式版本控制系统权威指南学习笔记(二):git add暂存区的三个状态以及暂存区的理解

    文章目录 不经过git add(到暂存区),能直接进行commit吗? 举个

  5. git分布式版本控制系统权威指南学习笔记(五):git checkout

    文章目录 分离头指针 通过cat可以查看当前的分支 通过branch查看当前分支 checkout commitId(真正的

  6. Hadoop权威指南学习笔记三

    HDFS简单介绍 声明:本文是本人基于Hadoop权威指南学习的一些个人理解和笔记,仅供学习參考.有什么不到之处还望指出,一起学习一起进步. 转载请注明:http://blog.csdn.net/my ...

  7. Git权威指南学习笔记(二)Git暂存区

    例如以下图所看到的: 左側为工作区,是我们的工作文件夹. 右側为版本号库,当中: index标记的是暂存区(stage),所处文件夹为.git/index,记录了文件的状态和变更信息. master标 ...

  8. netty权威指南学习笔记三——TCP粘包/拆包之粘包现象

    TCP是个流协议,流没有一定界限.TCP底层不了解业务,他会根据TCP缓冲区的实际情况进行包划分,在业务上,一个业务完整的包,可能会被TCP底层拆分为多个包进行发送,也可能多个小包组合成一个大的数据包 ...

  9. IDA Pro 权威指南学习笔记(三) - IDA 桌面简介

    IDA 的默认桌面如下图 工具栏区域(1)包含与 IDA 的常用操作对应的工具,可以使用 View -> Toolbar 显示或隐藏工具栏 可以使用 View -> Toolbars -& ...

随机推荐

  1. 仿flask写的web框架

    某大佬仿flask写的web框架 web_frame.py from werkzeug.local import LocalStack, LocalProxy def get_request_cont ...

  2. vue绑值(表格)

    vue绑值(表格) <!DOCTYPE html> <html lang="zh-CN"> <head> <title>JSON取数 ...

  3. JS制作二级联动

    JS制作二级联动 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...

  4. Java第四次作业,面向对象高级特性(继承和多态)

    Java第四次作业-面向对象高级特性(继承和多态) (一)学习总结 1.学习使用思维导图对Java面向对象编程的知识点(封装.继承和多态)进行总结. 2.阅读下面程序,分析是否能编译通过?如果不能,说 ...

  5. 解决(Oracle)ORA-12528: TNS: 监听程序: 所有适用例程都无法建立新连接 问题

    解决(Oracle)ORA-12528: TNS: 监听程序: 所有适用例程都无法建立新连接 问题通过在CMD下用lsnrctl status 查看出的问题:发现BLOCKEDORACLE启动步骤:s ...

  6. switch gnome-terminal tabs

    Ctrl+Page Down (forward) and Ctrl+Page Up (backward). http://unix.stackexchange.com/a/67963

  7. centos安装virtualbox

    参考:http://www.if-not-true-then-false.com/2010/install-virtualbox-with-yum-on-fedora-centos-red-hat-r ...

  8. Java继承方法隐藏(覆盖)

    方法隐藏 一个类从其超类继承所有非私有静态方法.在子类中重新定义继承的静态方法称为方法隐藏.子类中的重定义静态方法隐藏其超类的静态方法.在类中重定义非静态方法称为方法覆盖.关于方法隐藏的重定义方法(名 ...

  9. Oracle查看有锁进程,删除锁

    查看锁表进程SQL语句1: select sess.sid,     sess.serial#,     lo.oracle_username,     lo.os_user_name,     ao ...

  10. 从一个url地址到最终页面渲染完成,发生了什么?

    从一个url地址到最终页面渲染完成,发生了什么? 1.DNS 解析 : 将域名地址解析为IP地址 浏览器DNS缓存 系统DNS缓存 路由器DNS缓存 网络运营商DNS缓存 递归搜索: www.baid ...