尝试签署提交时出现此错误:
git commit -S -m "test"
gpg: skipped "EF617ACA9EC3XXXX": No secret key
gpg: signing failed: No secret key
error: gpg failed to sign the data
fatal: failed to write commit object
Run Code Online (Sandbox Code Playgroud)
这是 gpg --list-secret-keys --keyid-format LONG 的输出
钥匙在那里
sec rsa4096/EF617ACA9EC3XXXX 2020-05-17 [SC] [expires: 2022-05-17]
AD68154000A712DCD161D826EF617ACA9EC3XXXX
uid [ultimate] name <email@gmail.com>
Run Code Online (Sandbox Code Playgroud)
这是具有相同密钥的 git config
user.signingkey=EF617ACA9EC3XXXX
user.email=email@gmail.com
Run Code Online (Sandbox Code Playgroud)
知道出了什么问题吗?
Eri*_*nez 36
git config --global gpg.program "c:/Program Files (x86)/GnuPG/bin/gpg.exe"
我安装了 Kleopatra 并在其中生成了我的密钥。在运行上面的命令之前,我无法创建提交。
CTS*_*_AE 14
如果有人像我一样是个 dufus,我会收到此错误,因为我在通过以下方式直接编辑文件时 gitkey 错误:git config --global -e
或code ~/.gitconfig
任何您喜欢的编辑器风格。
singingkey
代替signingkey
\xe2\x80\x8d\xe2\x99\x82\xef\xb8\x8f小智 7
在 Windows 10 git bash 中面临同样的问题。这样做解决了我的问题。你可以通过运行找到这条路径where gpg
$ git config --global gpg.program "C:\Program Files\Git\usr\bin\gpg.exe"
首先检查git config gpg.program
以查看是否为gpg
或gpg2
(如此处所示)。
并键入where gpg
ndwhere gpg2
以检查 GPG 程序考虑的路径。
我建议设置gpg.program
为gpg2
,并将您的gpg.exe
(假设它的版本是 2.x)复制到gpg2.exe
这应该强制 Git/GPG 充当 gpg2。
归档时间: |
|
查看次数: |
2359 次 |
最近记录: |