【发布时间】:2011-10-31 00:04:32
【问题描述】:
Git 和 GitHub 都显示短版本的 SHA——仅显示前 7 个字符,而不是全部 40 个字符——而且 Git 和 GitHub 都支持将这些短 SHA 作为参数。
例如git show 962a9e8
例如https://github.com/joyent/node/commit/962a9e8
鉴于可能性空间现在低了几个数量级,“只是”268 million,Git 和 GitHub 如何在此处防止冲突?他们又是如何处理的?
【问题讨论】:
-
这不是 GitHub 级别的问题,因为 sha1 对于每个单独的项目都是独一无二的。
-
两个 7 字符的短 sha1 仍然完全有可能在单个项目中发生冲突。
-
有谁知道是否可以通过 github 的 API 用短 SHA 抓取提交...例如,github.com/alexnaspo/var_dumpling-chrome/commit/9e9726ac 返回我需要的提交,但 api.github.com/repos/alexnaspo/var_dumpling-chrome/git/commits/… 没有
标签: git cryptography github sha