小编典典

Git 错误 - gpg 未能签署数据

all

我刚开始使用 git,我通过自制软件安装了 git 和 gpg。出于某种原因,当git commit 我查看有关此主题的许多其他
stackoverflow 问题时遇到此错误,但没有一个对我有用。如何修复此错误以便我可以成功上传。

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

阅读 78

收藏
2022-05-07

共1个答案

小编典典

对于故障排除,首先要尝试两件事:

  • 运行gpg --version,并确保您安装了 GnuPG 版本 2+(不是版本 1)
  • 运行echo "test" | gpg --clearsign,以确保gpg自身正常工作

如果一切看起来都很好,接下来要尝试的一件事:

  • 运行brew install pinentry以确保您为密码输入安装了一个好的工具

如果在安装之后,您重试git commit并仍然收到“ failed to sign the data”错误,请执行以下操作:

  • rungpgconf --kill gpg-agent杀死任何可能挂起的正在运行的代理

否则,运行一些基本步骤来检查您是否有一个工作的 GnuPG 环境:

  • 运行gpg -K --keyid-format SHORT,检查您是否至少拥有一对密钥

如果输出显示您没有 GnuPG 可以使用的密钥,您需要创建一个:

  • 运行gpg --gen-key,让 GnuPG 引导您完成创建密钥对的步骤

如果您收到一条错误消息,指出 “设备的 ioctl 不合适” ,请执行以下操作:

  • 运行export GPG_TTY=$(tty)和/或将其添加到您的~/.bashrc藴/.bash_profile
2022-05-07