gpg“无法写入提交对象”

问题描述 投票:0回答:1

我正在尝试在OS X Mojave上启用提交签名。

git commit -S -am "Test"

错误是:

error: gpg failed to sign the data
fatal: failed to write commit object

我尝试了什么:

  • gpg工作正常(见下文),没有安装gpg1gpg2
  • 已安装GPG KeyChain并添加了一个新密钥(甚至添加了一个单独的仅用于签名的子项)
  • 安装pinentry
  • gpg2 --clearsign工作正常(为文件生成一个新的.asc文件,输出纯文本的文本)

我调查的问题并尝试了每个选项:

我究竟做错了什么?

macos code-signing gnupg
1个回答
1
投票

我刚刚将密钥ID添加到全局配置中

列出所有键:

gpg --list-keys

选择您添加到github的那个并进行设置。

git config --global user.signingkey [public key ID]

0
投票

嘿,当然,在我发布这个问题之后,我找到了解决方案。

所以我的问题是我遵循了这个文档:https://help.github.com/en/articles/telling-git-about-your-signing-key

并设置GPGsmimesign,当我有Git <2.19并没有正确的X.509键。

所以我刚从全球smimesign中删除了~/.gitconfig的部分


0
投票

我也有这个问题。我找到了一个好的解决方案在提交之前尝试签名文件。

$ touch a.txt
$ gpg --sign a.txt

然后,操作系统将允许您输入密码。如果此步骤正常,现在您可以通过正确签名来提交。

© www.soinside.com 2019 - 2024. All rights reserved.