Gpg 提交中的一个坑

AI 摘要
文章介绍了在使用GitHub的过程中,配置好GPG加密后,提交commit时需要输入密码。但是会出现数据签名失败和写提交对象失败的提示。作者通过Google找到了解决方法,即在/etc/profile.d/gpg.sh中定义GPG_TTY变量为$(tty),这样每次登录时,该变量会自动加载,解决了错误提示的问题。
警告
本文最后更新于 2022-03-02,文中内容可能已过时。

当github配置好gpg加密后,提交commit就需要输入密码了。不过提交后,总会弹出一个提示:

1
2
ERROR:数据签名失败 
Fatal:写提交对象失败 

就很诡异。

Google一番后,找到了解决方法:

定义GPG_TTY变量为$(tty)。

1
2
3
4

cat > /etc/profile.d/gpg.sh << EOF 
export GPG_TTY=$(tty) 
EOF 

这样,每当你登录时,这个变量都会自动加载,不会再出现这种error的情况。