最佳答案
例如,如果您要构建一个目录结构,其中一个目录以Git存储库中的提交命名,并且希望它足够短以使您的眼睛不流血,但又足够长以使它发生碰撞的几率可以忽略不计,那么通常需要多少SHA子字符串呢?
假设我想唯一地标识这个更改:https://github.com/wycats/handlebars.js/commit/e62999f9ece7d9218b9768a908f8df9c11d7e920
我可以用最少的前四个字符: https://github.com/wycats/handlebars.js/commit/e629 < / p >
但我觉得那太冒险了。但是假设一个代码库在几年内可能有3万次更改,如果我使用8个字符,碰撞的几率是多少?12 ?对于这种事情,有没有一个通常被认为是可以接受的数字?