threads / bug / 40023

[bug report] Signing your work: GnuPG signing failed (gpg version 2.1)

Subject: [bug report] Signing your work: GnuPG signing failed (gpg version 2.1)

## tl;dr

2 messages between Aug 5, 2015 and Aug 5, 2015.

replies: 1people: 2as markdown or json

Hugo Roy· Aug 5, 2015, 20:35 UTC · lore
Hello,

I've tried to sign a commit following https://git-scm.com/book/tr/v2/Git-Tools-Signing-Your-Work however, this is what happened:

    % git commit -a -S -m "signed commit testing"
    gpg: échec de la signature : Opération annulée
    gpg: signing failed: Opération annulée
    error: gpg n'a pas pu signer les données
    fatal: échec de l'écriture de l'objet commit

sorry for the locale, "annulée" means cancelled and the last two lines mean:

    error: gpg could not sign data
    fatal: failure to write the commit object

However, when I tried later, nothing specific happened and the commit was done just as if I did not add the -S option:

    % git commit -a -S -m "signed commit test"
    [master 739cdd3] signed commit test
    1 file changed, 5 deletions(-)

Commit: https://github.com/hugoroy/.emacs.d/commit/b8e5b72def0c5fcc760c84d6ecd2b95b9727ae62

I notice in the git-scm.com manual that they use GnuPG version 1. I use GnuPG 2.1.6 with libgcrypt 1.6.3.

Let me know if you need more information or any pointer to help me debug this more in depth.

thanks, Hugo

-- 
Hugo Roy – Free Software Foundation Europe https://fsfe.org/about/roy
 
Please use cryptography for email: see https://emailselfdefense.fsf.org/en/
Merci d’utiliser la cryptographie pour l’email : voir https://emailselfdefense.fsf.org/fr/
brian m. carlson· Aug 5, 2015, 22:55 UTC · re: Hugo Roy · lore

Re: [bug report] Signing your work: GnuPG signing failed (gpg version 2.1)

On Wed, Aug 05, 2015 at 10:35:45PM +0200, Hugo Roy wrote:
Show 33 quoted lines
> 
> Hello,
> 
> I've tried to sign a commit following
> https://git-scm.com/book/tr/v2/Git-Tools-Signing-Your-Work however,
> this is what happened:
> 
>     % git commit -a -S -m "signed commit testing"
>     gpg: échec de la signature : Opération annulée
>     gpg: signing failed: Opération annulée
>     error: gpg n'a pas pu signer les données
>     fatal: échec de l'écriture de l'objet commit
> 
> sorry for the locale, "annulée" means cancelled and the last two
> lines mean:
> 
>     error: gpg could not sign data
>     fatal: failure to write the commit object
> 
> However, when I tried later, nothing specific happened and the commit
> was done just as if I did not add the -S option:
> 
>     % git commit -a -S -m "signed commit test"
>     [master 739cdd3] signed commit test
>     1 file changed, 5 deletions(-)
> 
> Commit:
> https://github.com/hugoroy/.emacs.d/commit/b8e5b72def0c5fcc760c84d6ecd2b95b9727ae62
> 
> 
> 
> I notice in the git-scm.com manual that they use GnuPG version 1. I
> use GnuPG 2.1.6 with libgcrypt 1.6.3.

I believe this is a bug in GnuPG 2.1 or the relevant pinentry. Debian bug #793016[0] describes my experience with it. Killing the gpg-agent when this occurs and letting it respawn works for me. I'm very certain that this is not a bug in Git, though.

GnuPG 2.1 provides the same command line interface as GnuPG 1, so it will work the same way with git. Failing to sign is a GnuPG problem, not a Git problem.

[0] https://bugs.debian.org/790316
-- 
brian m. carlson / brian with sandals: Houston, Texas, US
+1 832 623 2791 | http://www.crustytoothpaste.net/~bmc | My opinion only
OpenPGP: RSA v4 4096b: 88AC E9B2 9196 305B A994 7552 F1BA 225C 0223 B187

← back to recent threads