扫码关注官方订阅号
git的commit id是根据什么来算出那个SHA1值的?
在Git中,每个commit id的信息(如f2c8ea6ea648d4b097f2e552b674f856a86c31cc)就是一个sha1 hash值,如果想查看自己分支中的coomit id执行git log即可。如图
commit id
f2c8ea6ea648d4b097f2e552b674f856a86c31cc
coomit id
git log
生成这个hash值,它是对那个commit是Git仓库中内容和头信息Header的一个校验和checksum。Linux kernel开创者和Git的开发者——Linus说,Git使用了sha1并非是为了安全性,而是为了数据的完整性;它可以保证,在很多年后,你重新checkout某个commit时,一定是它多年前的当时的状态,完全一摸一样,完全值得信任。在Git中,根据commit的sha1值40个十六进制数字进行了简单的划分目录,以前2位数字作为目录名,其下面是剩余38位数字组成的一个文件名。希望对你有帮助。具体请参考 Git Object
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
在Git中,每个
commit id
的信息(如f2c8ea6ea648d4b097f2e552b674f856a86c31cc
)就是一个sha1 hash值,如果想查看自己分支中的coomit id
执行git log
即可。如图生成这个hash值,它是对那个commit是Git仓库中内容和头信息Header的一个校验和checksum。Linux kernel开创者和Git的开发者——Linus说,Git使用了sha1并非是为了安全性,而是为了数据的完整性;它可以保证,在很多年后,你重新checkout某个commit时,一定是它多年前的当时的状态,完全一摸一样,完全值得信任。在Git中,根据commit的sha1值40个十六进制数字进行了简单的划分目录,以前2位数字作为目录名,其下面是剩余38位数字组成的一个文件名。希望对你有帮助。具体请参考 Git Object