如何解决将gpg与子项一起使用时,GitLab中未验证的提交
我一直在测试GitLab和GnuPG,以将我的签名添加到提交中。我相信我遵循了手册,了解如何使用公共密钥设置GitLab以及在家中使用私有密钥对提交进行签名的存储库。唯一的区别是,我为签名和加密使用了单独的子项。 GitLab可以正确识别所有公共子项,并显示已验证的证书。在家里,我已经为user.signingkey
分配了签名子项的正确ID,并尝试了显式选项-S<subkey-id>
不幸的是,每次我推送已签名的提交时,它们仍然显示为“未验证”。我在每次提交时检查了签名密钥的ID,并且在GitLab和GPG证书中,子密钥ID似乎正确并且电子邮件地址也匹配。已验证GitLab中使用的电子邮件地址。我尝试了user.name
来获取GitLab凭据,但也没有帮助。我想知道GitLab还无法识别什么。
我发现有关此问题的信息很少。通常,其他人遵循网站上的过程创建默认GPG证书而没有其他子项,Unverified
提交最有可能是由于电子邮件地址之间的不匹配而出现的。我还阅读了this answer,其中介绍了如何将子键合并为一个键。但是,GitLab应该无需任何准备就可以使用子项。那里another answer也没有帮助我。
解决方法
我在从第二台 PC 导入 GPG 密钥后遇到了这个问题,因此导入的密钥在我的第二个系统上不受信任。
运行 gpg --list-keys
并检查您的电子邮件行是否具有 [ultimate]
状态。
如果不是,则使用 --edit-key
gpg --edit-key name@domain.tld
trust
5
yes
save
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。