玩转git三剑客(三)|了解HEAD【存储】

10 | commit、tree和blob三个对象之间的关系

git对象:commit、tree、blob

三者图例

-commit
此次提交信息的一个快照。

  • tree
    就相当于目录。
  • blob
    具体的某一个文件。 文件内容一样(不关心文件名),就是同一个blob。

类似于二叉树,一次commit,创建一棵大树,commit是root节点。该tree里面有具体的信息,可能有blob(文件)、tree(文件夹)。


11 | 小练习:数一数tree的个数

数tree的个数

12 | 分离头指针情况下的注意事项

git checkout hash值
写代码时,要注意要在分支下开发,要不然有可能git会当做垃圾清除了。


13 | 进一步理解HEAD和branch

HEAD可以指向当前分支,也可以指向commit

  • git diff HEAD HEAD^^ (~和……代表的是父节点)
  • git diff HEAD HEAD~2
  • git diff hash hash
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1,查看所有远程分支:%git branch -r 2, 拉取远程分支并创建本地分支git checkout -...
    will666阅读 2,098评论 0 18
  • 一、 Git 常用命令速查 git branch 查看本地所有分支 git status 查看当前状态 git c...
    LOVE_晴天阅读 2,333评论 0 10
  • 倦鸟归去,晚霞褪去,看不分明的寂寥的星, 霓虹闪起,街灯亮起,夜航的飞机低低飞去, 城市生长着密密匝匝的楼宇, 亦...
    檐下猫影阅读 241评论 0 0
  • Grieche阅读 286评论 0 6
  • 方案 RocketMQ是分布式的消息队列,所以有各种高性能,高可用的部署方案。本文暂时不考虑高性能和高可用的部署方...
    do_young阅读 15,274评论 0 4