栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Git如何创建唯一的提交哈希,主要是前几个字符?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Git如何创建唯一的提交哈希,主要是前几个字符?

Git使用以下信息来生成sha-1:

  • 提交的源树(展开到所有子树和blob)
  • 父提交sha1
  • 作者信息(带时间戳)
  • 提交者信息(正确的,那些是不同的!,还有时间戳)
  • 提交消息

(有关完整说明,请参见此处)。

Git 保证前四个字符是唯一的。在Pro Git书的第7章中写道:

Git可以为您的SHA-1值找出一个简短的唯一缩写。如果将–abbrev-commit传递给git
log命令,则输出将使用较短的值,但保持它们唯一。它默认使用七个字符,但在必要时将它们延长以保持SHA-1的明确:

因此 ,只要 保持唯一性,Git都会 尽可能地 缩写。他们甚至注意到:

通常,八个到十个字符足以在一个项目中唯一。

例如,Linux内核是一个相当大的项目,具有超过450k的提交和360万个对象,没有两个对象的SHA-1重叠超过前11个字符。

因此,实际上,它们仅取决于具有完全相同的(a的X个首字符)sha 的极大 可能性



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/637483.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号