在存储库A上运行git rev-parse --short HEAD
时,我得到长度为7的哈希输出,因为它是git documentation中--short
选项的默认长度。
在存储库B中运行相同的命令时,我得到一个长度为9的哈希输出。什么可以基于每个存储库覆盖--short
选项的默认长度?
答案 0 :(得分:5)
看起来文档已经过时了。这可能是由于以下两个原因之一而发生的:
git rev-parse --short
将尝试返回唯一的哈希字符串。这似乎不太可能,但理论上可行。OR
git rev-parse --short
实际上会给出一个不小于7的数字,但由于仓库中的打包对象数量可能会更高。https://git-scm.com/docs/git-config#git-config-coreabbrev
设置长度对象名称缩写为。如果未指定或设置为" auto",则会根据存储库中打包对象的近似数量计算适当的值,这有望使缩写对象名称在一段时间内保持唯一。
所以官方文档已过时,--short
选项并不会强制长度为7,即使我没有覆盖长度(我也没有)。 )