欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 培训 > Git研究

Git研究

2025/10/22 11:58:11 来源:https://blog.csdn.net/xiaowanziwuha/article/details/148186704  浏览:    关键词:Git研究

以下命令在CentOS系统下执行

创建Git仓库

git init git-example

监控.git目录的变化情况:

watch -n .5 tree .git

写入文件内容,并把文件添加到Stage暂存区

echo 1 > t.txtgit add 1.txt

观察结果如下:objects下多出了一个d00491fd7e5bb6fa28c517a0bb32b8b506539d4d的对象

git cat-file -p d00491fd7e5bb6fa28c517a0bb32b8b506539d4d  查看对象的内容为1

git cat-file -t d00491fd7e5bb6fa28c517a0bb32b8b506539d4d 查看对象的类型为blob

知识点:Git的Objects对象的名称d00491fd7e5bb6fa28c517a0bb32b8b506539d4d计算方式是SHA1(<对象类型> <内容长度>\0<原始内容>)

SHA1(blob 2\01) 注意:在C语言中,\0用于标记字符串的结束。(不是\0字符本身,需使用printf输出\0空字符

(printf "blob 2\0"; echo "1") | sha1sum

计算SHA1便捷指令:

(printf "blob %d\0" $(wc -c < 1.txt); cat 1.txt) | sha1sum

提交Commit文件,查看Objects变化(多了2个Object,一个tree,一个commit)

git commit -m "first commit"

Tree对象的内容:

Commit对象的内容:

最后查看 master 分支的 head 指向,可以看到指向了最新提交对应 commit object 的 key

cat .git/refs/heads/master

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词