简 述: 在 mac 上面配置好了 gpg 的相关密钥之后,尝试带着 gpg 验证提交 commit,发现报错如下:

[TOC]


本文初发于 “偕臧的小站“,同步转载于此。


编程环境:

  💻: MacOS 10.14.6 📎 Qt 5.12.8 📎 gcc/g++ 9.2 📎 gdb8.3


报错问题:

当按照教程,在 Mac上面配置好了gpg 的教程之后,尝试带验证提交 commitgithub 上,发现报错如下:

error: gpg 数据签名失败
fatal: 写提交对象失败

解决方法:

将下面的三个步骤都运行一遍:

  • .zshrc里面加入一行代码 export GPG_TTY=$(tty)

  • 重启 gpg-agent

    第一次配置,必须重启,否则签名会失败,命令如下:

    gpgconf –kill gpg-agent
  • 重启终端(或者新开一个终端标签)

成功之后即可以看到:


参考博客:

下面的 1,2 两篇是如何创建 gpg 和使用,3,4 篇是实际第一使用会遇到的错误解决方法。

在Github上使用GPG的全过程

Git 使用 GPG 签名你的 Commit

解决GPG签名失败的问题

github gist