git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Commits are no longer gpg-signed in 2.9.0 when "commit.gpgsign" is enabled

From
NFNils Fenner <nilsfenner@web.de>
Date
Jul 11, 2016, 16:27 UTC
Message-ID
<5783C90D.1010909@web.de>
In-Reply-To
<20160711144420.nsibnudjxvgdz7cl@LykOS.localdomain>
Hi Santiago,

repeated your test here and actually found something interesting. When committing via 'git gui', commits are not being gpg-signed, while firing a 'git commit' shows the passphrase dialog and signs the commit correctly.

Here's what I did:

git init gpg-signing-test && cd gpg-signing-test git config --local commit.gpgSign true echo 'Commits in this repo must all GPG signed!' > aFile.txt git gui --> add change and commit

Result: No dialog shown and not pgp-signed!

Now I went further: vi aFile.txt --> Prepend a "# " as another change git commit

Here the passphrase dialog showed up and the commit got correctly signed!
Side-Note: I also set "user. signingkey" in "global" Git configuration.
My local repo's config:
[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[commit]
    gpgSign = true
[gui]
    wmstate = normal
    geometry = 872x391+0+0 205 177
-- 
What you mean by wme? Is it the gpg-agent's config or something?

Hope that points in the right direction.

Cheers,
Nils

Am 11.07.2016 um 16:44 schrieb Santiago Torres:
> Hi Nils,
>
> I just checked and I have commits made in 2.9 with this option set and I
> don't seem to have your issue. Here's what I did:
>
>     santiago at ~/test-signing ✔ git init
>     Initialized empty Git repository in /home/santiago/test-signing/.git/
>     santiago at ~/test-signing ✔ hub create
>     Updating origin
>     Enter passphrase for key '/home/santiago/.ssh/id_rsa': 
>     created repository: SantiagoTorres/test-signing
>     santiago at ~/test-signing ✔ touch testfile
>     santiago at ~/test-signing ✔ git add testfile 
>     santiago at ~/test-signing ✔ git commit
>     i[master (root-commit) 6de1ad2] TEST: tests git autocommit setting
>      1 file changed, 0 insertions(+), 0 deletions(-)
>      create mode 100644 testfile
>     santiago at ~/test-signing ✔ git log --show-signature
>     commit 6de1ad20237f042433f8b94a3bf8c7cc41711d90 (HEAD -> refs/heads/master)
>     gpg: Signature made Mon 11 Jul 2016 10:40:41 AM EDT using RSA key ID 468F122CE8162295
>     gpg: Good signature from "Santiago Torres <torresariass@gmail.com>" [ultimate]
>     gpg:                 aka "Santiago Torres-Arias <santiago@nyu.edu>" [ultimate]
>     Author: Santiago Torres <torresariass@gmail.com>
>     Date:   Mon Jul 11 10:40:32 2016 -0400
>
>         TEST: tests git autocommit setting
>     santiago at ~/test-signing ✔ git push origin master
>     Enter passphrase for key '/home/santiago/.ssh/id_rsa': 
>     Counting objects: 3, done.
>     Writing objects: 100% (3/3), 879 bytes | 0 bytes/s, done.
>     Total 3 (delta 0), reused 0 (delta 0)
>     To git@github.com:SantiagoTorres/test-signing.git
>      * [new branch]      master -> master
>     santiago at ~/test-signing ✔ git --version
>     git version 2.9.0
>     santiago at ~/test-signing ✔ 
>
> You can check the github repository 
>
> Do you have a mwe/.gitconfig so I can take a look at it? 
>
> I wonder if this issue is similar to what happened in mutt, where gpg
> doesn't show the password prompt using gpg-agent and it silently failed.
>
> Thanks,
> -Santiago.
>
> On Mon, Jul 11, 2016 at 01:29:10PM +0200, Nils Fenner wrote:
>> Hey Git community,
>>
>> since Version 2.9.0, the configuration option "commit.gpgsign" doesn't work
>> as users would expect. By committing via 'git gui' (or usual 'git commit'
>> without further option), commits are not being auto-signed any longer, when
>> "commit.gpgSign" configuration option is set. I also couldn't find a flag to
>> "workaround" that situation in the GUI. To my understanding, I now have to
>> pass the '-S' option to 'git commit' every time and GUI becomes "impractical
>> to use". Surprisingly, nobody seems having noticed this behavioural change
>> since the release of 2.9.
>>
>> FYI: In the release log, there's a note stating, that this has been altered
>> in the context of 'git commit-tree'. Maybe this interferes with "normal"
>> behaviour.
>>
>> Would be happy hearing from you soon. Thanks!
>>
>> Cheers,
>> Nils
>>
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe git" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous: Santiago TorresNext: Santiago Torres
Message 3 of 5 in “Commits are no longer gpg-signed in 2.9.0 when "commit.gpgsign" is enabled”
  1. Nils FennerJul 11, 2016
  2. Santiago TorresJul 11, 2016
  3. Nils FennerJul 11, 2016
  4. Santiago TorresJul 11, 2016
  5. Junio C HamanoJul 11, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.