我最近遇到了同样的无法使用的密钥
错误,以及一些其他错误,比如找不到GPG代理。
在我的情况下,我想让提交被签名,并在GitHub上显示为已验证。
以下是在Windows 10 x64上使其工作的完整步骤:
安装GPG
我使用winget
安装了GPG 2.3.1,如下所示:
C:\> winget install GnuPG.GnuPG
验证方式:
C:\> gpg --version
生成 GPG 密钥
C:\> gpg --full-generate-key
以ASCII装甲格式导出密钥
首先将密钥列出:
C:\> gpg --list-secret-keys --keyid-format=long
sec rsa4096/[短密钥] 2021-06-14 [SC]
然后导出它:
C:\> gpg --armor --export [short-key]
复制密钥,包括BEGIN/END文本。
[huge-ascii-key]
将 GPG ASCII 密钥添加到 GitHub 账户
进入 个人资料
> 设置
> SSH 和 GPG 密钥
> 新建 GPG 密钥
或者请按照这些视觉指南进行操作。
配置 Git 默认签名所有提交
C:\> git config --global user.signingkey [short-key]
C:\> git config --global commit.gpgsign true
C:\> git config --global gpg.program "C:/Program Files (x86)/gnupg/bin/gpg"
设置GPG代理的环境变量
检查GPG代理是否存在:
gpg-agent --version
设置环境变量:
GNUPGHOME=%USERPROFILE%\AppData\Roaming\gnupg
完成
生成的 .gitconfig
文件将包含以下用户信息部分:
[user]
name = Your Name
email = your@email.com
signingkey = [short-key]
[commit]
gpgsign = true
[gpg]
program = C:/Program Files (x86)/gnupg/bin/gpg