当前位置:   article > 正文

git使用之三——.git文件夹详解_inurl:.git

inurl:.git

git使用之一——git的基本使用 
git使用之二——.gitignore文件详解 
git使用之三——.git文件夹详解 
git使用之四——windows下github桌面版的安装 
git使用之五——Github上fork项目后与原项目保持同步 
git使用之六——github协同工作的Fork+Pull Request 
git使用之七——Android Studio下git的正确使用

.git文件夹


.Git文件夹是git init后在当前目录生成的一个管理git仓库的文件夹,这里包含所有git操作所需要的东东,请看:

11

下面我们就来详细介绍下这里面都藏了些什么。

介绍


1 hooks:这个目录存放一些shell脚本,可以设置特定的git命令后触发相应的脚本;在搭建gitweb系统或其他git托管系统会经常用到hook script。

2 info:包含仓库的一些信息

3 logs:保存所有更新的引用记录

比如有个HEAD文件,里面这样子:

HEAD

4 objects:该目录存放所有的Git对象,对象的SHA1哈希值的前两位是文件夹名称,后38位作为对象文件名。

比如前面log里的HEAD文件里有个哈希值是5426426e3ccc9ab4e3330640862a7b96e28828af

我们找到54文件夹,打开,这样子: 
54 
5 refs:具体的引用,Reference Specification,这个目录一般包括三个子文件夹,heads、remotes和tags,比如,heads中的master文件标识了项目中的master分支指向的当前commit,其他类似。

6 COMMIT_EDITMSG:保存最新的commit message,Git系统不会用到这个文件,只是给用户一个参考

7 config:这个是GIt仓库的配置文件

8 description:仓库的描述信息,主要给gitweb等git托管系统使用

9 index:这个文件就是我们前面提到的暂存区(stage),是一个二进制文件

10 HEAD:这个文件包含了一个分支(branch)的引用,通过这个文件Git可以得到下一次commit的parent,什么是引用呢,你可以理解为指针,哪儿都可以指,但是不能指向没有的东西哦。详细介绍请看这里: 
git使用之一——git的基本使用

因为git是根据哈希值索引的,计算机内部这样处理,为了方便我们使用,所以出现了引用的概念,Git系统中的分支名、远程分支名、tag等都是指向某个commit的引用。比如master分支,origin/master远程分支,命名为V1.0的tag等都是引用,它们通过该保存某个commit的SHA1哈希值指向某个commit的点。

11 ORIG_HEAD:HEAD指针的前一个状态

到这里对这个应该有很深的了解了,你自己挨个打开看看,就会更加深入,谢谢。

enjoy!

悦分享,越快乐^_^

欢迎交流,转载请注明出处,谢谢!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/747429
推荐阅读
相关标签
  

闽ICP备14008679号