10.1 Git Internals - Plumbing and Porcelain(看书笔记)

第一段

  1. git本质上是一个内容可寻址的文件系统。而我们常用到的版本控制功能是基于该文件系统写的更易用的UserInterface
  2. 内容可寻址文件系统层是一个炫酷的工具。

Plumbing and Porcelain

  1. Plumbing就是更加底层的,进行一些底层操作的git命令(偏向文件系统操作)。这些命令往往不直接用命令行手动执行,而是被组合成自定义工具。
  2. Porcelain就是对用户更加友好的,更易使用的git命令(偏向版本控制操作)。
  3. 仓库初始化和.git文件夹
  • 初始化一个git仓库用下面这个命令。
git init
  • git创建啦.git文件夹,git所有存储和操作都在该文件夹中进行,如果需要备份仓库,只需要复制这个文件夹就可以啦。
  • .git文件夹下的各个文件夹和文件的作用简单介绍。
    1. description文件没啥用,只被用于GitWeb Program,不用管。
    2. config文件包含啦本仓库指定的某些设置选项。
    3. info文件夹,存储啦一个全局排除文件exclude
    4. hooks文件夹这一章节不讲。
    5. 另外四个重要条目:
    • objects文件夹,存储啦你数据库所有的对象。
    • refs文件夹,存储啦指向commit对象的pointer(就是branches)
    • HEAD文件,指向你目前check out的branch
    • index文件,就是Git存储你的Staging area信息的地方。

总结

  1. 初始化空的git仓库
git init
  1. 重要文件夹
    • objects文件夹,存储啦你数据库所有的对象。
    • refs文件夹,存储啦指向commit对象的pointer(就是branches)
    • HEAD文件,指向你目前check out的branch
    • index文件,就是Git存储你的Staging area信息的地方。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Blob Object 10.1中说啦,git本质是一个内容可寻址的系统,所以Git的核心就是一个 key-val...
    老沈Rosen阅读 1,454评论 0 0
  • 1. 安装 Github 查看是否安装git: $ git config --global user.name "...
    Albert_Sun阅读 13,738评论 9 163
  • 今天放纵了自己。说是放纵,也许在别人看来,并算不得是什么放纵。 第一,中午忍无可忍,吃了一份儿早就想吃的酸辣粉,不...
    叮咚的你阅读 231评论 0 0
  • 身边有太多太多自身很优秀,条件很好的朋友三十多岁了还没找到对象,一说就是没合适的。包括至今单身的我,有时候我也自问...
    美人宇阅读 150评论 0 0
  • 记一段与上帝的对话: 为什么在我以为生活已经遭到不能再糟的时候,总还是会变得更糟。为什么你一再给予我这么多的考验?...
    Ella亚星阅读 371评论 0 0