Windows 10下Git提交要求输入遗忘的OpenPGP密钥口令,该如何解决?
解决Windows 10下遗忘GPG私钥口令无法提交GitHub项目的问题
先关掉Git的GPG签名设置,避免提交时触发旧密钥验证
- 若之前是全局开启签名,打开Git Bash执行:
git config --global --unset commit.gpgsign - 若仅单个仓库开启签名,进入项目目录后执行:
git config --local --unset commit.gpgsign
- 若之前是全局开启签名,打开Git Bash执行:
彻底删除旧GPG密钥(消除后续弹窗干扰)
- 打开Git Bash,输入
gpg --list-secret-keys --keyid-format=long,找到目标私钥的ID(比如sec rsa4096/ABCDE1234567890里的ABCDE1234567890) - 删除私钥:
gpg --delete-secret-keys ABCDE1234567890(替换成你的密钥ID) - 删除对应公钥:
gpg --delete-keys ABCDE1234567890
- 打开Git Bash,输入
(可选)若仍需GPG签名提交,重新生成新密钥
- Git Bash中执行
gpg --full-generate-key,按提示选择RSA类型、4096位长度、有效期,填写与GitHub绑定的邮箱,设置新口令并牢记 - 导出公钥:
gpg --armor --export 你的新密钥ID,复制输出的全部内容 - 登录GitHub,进入「Settings」→「SSH and GPG keys」,点击「New GPG key」粘贴公钥并保存
- 配置Git使用新密钥:
git config --global user.signingkey 你的新密钥ID,若想全局自动签名,再加一句git config --global commit.gpgsign true
- Git Bash中执行
正常提交项目
执行git add .、git commit -m "提交说明"、git push即可完成提交,不会再弹出旧密钥的解锁窗口。
内容的提问来源于stack exchange,提问作者xiang
相关产品推荐
相关产品推荐

