问题描述
突然间,我所有存储库中的所有提交(似乎是我的 entire history)都显示为“未经验证”。直到最近,我很确定我的所有提交都被标记为已验证,并且此更改发生在过去几天。但我不知道为什么或如何解决它。
我在设置中的 GPG 密钥列表中有一个有效的密钥,那里的密钥 ID 对应于我的 user
的 .gitconfig
部分中的密钥 ID 和我的git 客户端(塔)。 .gitconfig
和我的 git 客户端中使用的电子邮件也在我的 GitHub 设置中的 GPG 密钥中经过验证的电子邮件列表中。与 GitHub 上的每个提交关联的 GPG 密钥 ID 与 GitHub 设置、我的 git 客户端和我的 git 设置中的有效 GPG 密钥相匹配。
为什么我的所有 GitHub 提交都显示为未验证,尤其是当它们过去显示为已验证时?如何让它们正确显示为已验证?
解决方法
即使 GitHub GPG UX 表示该密钥当前正在使用中,如果过期日期已延长,仍可能需要使用新导出的密钥对其进行更新。
但是没有办法简单地更新密钥,并且尝试上传具有更新的到期日期的密钥失败并显示密钥已在使用中的消息(令人困惑),唯一的途径是删除现有密钥首先,但这与一条消息似乎是死胡同(以粗体显示,不少于):
您使用此密钥签名的任何提交在删除后都将无法验证。
继续前进并删除现有密钥,然后上传最近导出的密钥(带有任何相关的到期日期扩展),尽管有可怕的警告,但提交将再次显示为已验证。