我在 Ubuntu 15.10 中运行 Git 2.8.1,并且我已将其设置为使用我的 keybase 密钥对我的所有提交进行 GPG 签名。它以前运行良好。
有一次,我不确定是什么原因造成的,我开始从 gpg 收到错误:
> $ git commit --all
You need a passphrase to unlock the secret key for
user: "keybase.io/madara <[email protected]>"
4096-bit RSA key, ID ........., created 2015-06-16
gpg: problem with the agent - disabling agent use
# At which point, it asks me for the passphrase, I input the correct one
# And still get the fatal errors below
error: gpg failed to sign the data
fatal: failed to write commit object
当我进入~/.gnupg/pgp.conf
并禁用该use-agent
线路时,它可以从终端工作(但随后我需要为我想要签名的每个提交输入很长的密码)。
我的 GPG_AGENT_INFO 环境变量是
echo $GPG_AGENT_INFO
/tmp/gpg-27dtzi/S.gpg-agent:1557:1
我不知道如何调试/处理它,所以如果我遗漏了任何重要信息,请随时询问。
答案1
作为一个临时的解决办法这对我有帮助:
killall gpg-agent
在此处找到:http://ubuntuforums.org/showthread.php?t=2156806&p=12774930#post12774930