Eclipse带签名Git提交报错Unable to find a GPG key for signing求助
Eclipse 提交GPG签名报错
Unable to find a GPG key for signing 解决方案 - 适配EGit Windows路径优先级规则:Windows环境下EGit会优先读取
%APPDATA%\gnupg目录下的密钥环,而非用户目录下的.gnupg。若%APPDATA%\gnupg不存在可手动创建,将C:\Users\[你的用户名]\.gnupg下的所有文件全部复制到该目录即可。 - 配置GNUPGHOME环境变量:不想复制文件的话,可新增系统环境变量
GNUPGHOME,值设置为C:\Users\[你的用户名]\.gnupg,配置完成后重启Eclipse生效。 - 校验Eclipse EGit配置:依次打开Eclipse 窗口>首选项>Team>Git>提交,确认「GPG程序」路径设置为
C:/Program Files/Git/usr/bin/gpg.exe,同时勾选「自动签名提交」选项,保存配置后重启IDE测试。 - 兼容旧版EGit密钥格式:你使用的EGit 5.10版本对GnuPG 2.2+默认的kbx密钥环适配存在缺陷,可在Git Bash执行
gpg --export-secret-keys -o ~/.gnupg/secring.gpg导出旧版兼容格式的私钥环,将生成的secring.gpg同时放到~/.gnupg和%APPDATA%\gnupg目录下即可。
补充说明
- 正常逻辑下原生Git确实可以通过提交邮箱自动匹配对应GPG密钥,但EGit的匹配逻辑比原生Git更严格,仍建议在全局Git配置中添加
user.signingkey = [你的16位完整私钥ID],不要使用短密钥ID,避免匹配失败。
内容的提问来源于stack exchange,提问作者L32
相关产品推荐
相关产品推荐

