Github - 没有可供比较的内容

Hello,

I am on 940eb28e31 . And now if i click the commits to view it on Github.

After click it won’t find anything… Is Discourse change branch or what am i missing? I always check the commits before upgrade.

Thank you! :slight_smile:

3 个赞

您好,

我们遇到了同样的问题。您有机会解决它吗?

使用 OP 的比较(940eb28e…fc61a7c0),我看到了相同的结果。添加第二个提交哈希(940eb28e…fc61a7c0d)的一个字符,我得到了正确的比较。

我的怀疑是,这是由提交哈希歧义引起的,即有两个提交都以 fc61a7c0 开头,所以它不知道使用哪一个。我在提交历史中没有看到它,但它可能是孤立的。

看起来 docker_manager 使用 git rev-parse --short 来获取该 URL 的哈希。理论上,这会产生唯一的哈希,从 7 个字符(默认)开始,并根据需要增加长度以保证唯一性。孤立的提交在拉取时会被忽略,因此 git 在 Discourse 实例上认为是唯一的,而在 GitHub 上可能不是唯一的。

不过,这种情况非常罕见,而且自您发帖以来已经有了新的提交,所以如果您再次检查更新,问题可能已经解决了。

5 个赞

你好 @kinetiksoft,感谢你重新提起这个话题!

我相信 Simon 说得对。非常感谢你给出的精彩解释!:slightly_smiling_face: 我从没想过这可能是问题所在。

是的,在几次提交后,我的问题已经解决了。

2 个赞

非常有趣——感谢@Simon_Manning的分析!

我创建了一个PR,它将更新docker_manager,以便在GitHub链接中使用完整的提交哈希:

看起来我们还没有在main分支上出现8位字符的哈希冲突。但是我们确实有一些7位字符的哈希冲突:

❯ git rev-list --all | cut -c1-7 | sort | uniq -d
27c793a
3483c7b
45a166b
96aca6d
c2e58b6
f73ed45
5 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.