跳至正文

解决gpg: signing failed: No secret key

最近刚修改完文档,打算提交的时候,突然给我冒出来这么一句话

我一开始以为是gpg4win的问题,重启了之后发现问题仍在,然后使用gpg -k看了一眼

C:\Users\Yang\AppData\Roaming\gnupg\pubring.kbx
-----------------------------------------------
pub   rsa3072 2022-02-08 [SC] [revoked: 2022-02-08]
      E513667D1B67C637FB7C62376B854751E3FF1C79
uid           [ revoked] Yang_qwq <[email protected]>

pub   rsa3072 2022-02-04 [SC] [revoked: 2022-02-04]
      2B69B8422AFE4F735E83E8104DCF0FDF7B4B79A0
uid           [ revoked] Yang_qwq <[email protected]>

pub   ed25519 2022-03-11 [SC] [expires: 2024-03-12]
      146D5F075EA7F9C06D151EF49A24BE447F4C73DC
uid           [ultimate] Yang_qwq <[email protected]>
sub   cv25519 2022-03-11 [E] [expires: 2024-03-12]

pub   ed25519 2022-03-11 [SC] [expires: 2024-03-12]
      B77552A9A0F28FEACB595B8715E66FCCAC5935CC
uid           [ultimate] Yang_qwq <[email protected]>
sub   cv25519 2022-03-11 [E] [expires: 2024-03-12]

乍一看好像没有问题啊,而且未吊销的密钥也可以正常使用

然后就求助了一下度娘,结果才发现是gpg程序位置的原因

一般来说你的windows gpg程序都在这个路径

C:\Program Files (x86)\GnuPG\bin\

所以,要在配置中手动指定gpg的路径

修改家目录下的.gitconfig

[gpg]
	program = C:\\Program Files (x86)\\GnuPG\\bin\\gpg(2).exe
    

或者通过命令直接修改

git config --global gpg.program "C:\Program Files (x86)\GNU\GnuPG\gpg.exe"
#或者
git config --global gpg.program "C:\Program Files (x86)\GNU\GnuPG\gpg2.exe"

修改完成后,问题解决

标签:

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注