Como solução temporária, isso me ajudou:
killall gpg-agent
Encontrado aqui: link
Eu tenho o Git 2.8.1 rodando no Ubuntu 15.10, e configurei para GPG assinar todos os meus commits usando minha keybase key. Costumava funcionar bem.
Em um ponto, não sei o que causou isso, comecei a receber erros do 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
Quando eu vou para ~/.gnupg/pgp.conf
e desabilito a linha use-agent
, ele funciona do terminal (mas eu preciso inserir a senha muito longa para cada commit que eu quero assinar).
Minha variável de ambiente GPG_AGENT_INFO é
echo $GPG_AGENT_INFO
/tmp/gpg-27dtzi/S.gpg-agent:1557:1
Eu não sei como depurar / abordá-lo, então se eu estiver perdendo alguma informação importante, fique à vontade para perguntar.