|
refs/ (references) 文件夹存储指向数据(分支)的提交对象指针;其中 heads 文件夹记录内部文件对应名称的分支的提交对象;tags记录内部文件对应名称的标签的提交对象;remotes记录内部文件对应名称的远程仓库分支的提交对象;
举个例子:
- cat .git/refs/heads/master
- # ce1fed3fdbaf12e816e3028055f9feee57b33b45 当前master的提交记录
- git checkout -b test # 检出一个新分支
- find .git
- # 多了个 .git/refs/heads/test 文件
- git log
-
- # commit 63a85dcbc6978f2d43996f5bebc38993c2afadaa (HEAD -> test)
- # Author: yeshou <yeshou@xxx.com>
- # Date: Sat Aug 25 13:57:26 2018 +0800
- #
- # branch test : edit test : add line : write d
-
- # commit ce1fed3fdbaf12e816e3028055f9feee57b33b45 (master)
- # Author: yeshou <yeshou@xxx.com>
- # Date: Sat Aug 25 12:40:35 2018 +0800
- #
- # edit test : add line : write c
-
- cat .git/refs/heads/test
- # 63a85dcbc6978f2d43996f5bebc38993c2afadaa 当前test的最近提交记录
- cat .git/refs/heads/master
- # ce1fed3fdbaf12e816e3028055f9feee57b33b45 依然是当前master的最近提交记录
另两者亦然。
objects/ 文件夹用以存储git仓库中的所有数据内容。
一步步来…
先看看这个文件夹里是怎么存数据内容的,再理解这些数据内容又是什么。
- # 为了清晰的看明白objects文件夹中文件的生成,初始化.git
- rm -rf .git
- git init
- cd .git
- find .git # 这时候objects文件夹下只有pack和info 两个空文件夹
- touch test
- vi test
- # 输入 a ,保存,退出
- git add test
- find .git
- # objects 下多了个文件夹,且里面有文件
- # .git/objects/44
- # .git/objects/44/2406aa9341668f9c43c2d5378a777ad69324a0
(编辑:淮安站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|