git - 为什么 github 的提交不显示“已验证”(签名提交)?
问题描述
通过设置 gpg 密钥,我从本地仓库获得了 git 提交,以在 github 上显示“已验证”。
但是为什么我的 github 提交(当我在 github 上时)没有显示为“已验证”?它什么也没显示,表明 github 将它们视为未经验证的提交。这是预期的还是我需要在 github 上配置一些东西?
谢谢。
解决方案
在 2020 年秋季的某个时候,可能在 10 月 1 日至 20 日之间,GitHub 改变了他们处理 GPG 密钥提交验证 rebase 的方式,其中仅COMMITTER_DATE
更改了 git。
所以这是我非常正常的用例流程:
- 我在一个尚未发布的功能的提交中发现了一个非常小的问题。
- 我提交它,然后重新调整临时修复提交。
- 因为已经过去了超过 1 天,所以 github 会将我的原始文件活动报告为今天发生。
- 我通过这样做来解决这个问题
git rebase --committer-date-is-author-date <HASH>
,它将 GitHub 文件修改日期重置为提交的日期时间,而不是今天/现在。
在 10 月 20 日之前,我在 8 年多的时间里执行这些步骤从未遇到过问题。
现在,突然之间,GitHub 将所有在这个 rebase 中的提交显示为未经验证:
您可以在https://github.com/hopeseekr/BashScripts/commits/fucked_up_gpg_verifications亲自查看
报错了吗?“没有用户与提交者电子邮件相关联。”,这显然是荒谬的,因为所有提交共享相同的电子邮件地址,并且它是帐户上的主要地址。
推荐阅读
- python - 我的 Floyd-Steinberg 抖动实现有什么问题?
- feathersjs - feathersJS 自定义身份验证
- sql - 在 SQL 中选择除某些 Data_Type(例如图像)之外的所有列
- javascript - 在 Mapview Marker 标题上反应原生 onPress 事件?
- c++ - Win32 API 打开新窗口
- join - Lead Lag 函数在 Teradata 15.0 上不起作用。任何可以给我类似结果的替代方法
- python - 无法卸载Tensorflow 2.1.0 因为conda 找不到包和解决环境失败
- r - py_call_impl(callable, dots$args, dots$keywords) 中的错误:ValueError:在用户代码中:
- database - MongoDb 根据动态键获取记录
- javascript - 没有错误显示,但 Chrome.Storage.Sync。Get 没有收到我在 Chrome.Storage.Sync.Set 中设置的内容