Thread (2 messages) flat view 2 messages, 2 authors, 2021-07-23

[Bug Report] Git does not push signingkey ID to GPG

From: Oliver Niebuhr <hidden>
Date: 2021-07-23 00:07:41

Hello.

Using 'git commit -S' (uppercase S) to gpg sign a commit does not work. 
It seems that Git does not push the ID to GPG.

When I use 'git commit --gpg-sign=[KEY]', it works as expected.

What do I try to achieve: Automate adding 'Signed-off-by' and 
automatically sign with the gpg key.

It should work from CMD Line as well from within an IDE.

I have edit the .gitconfig File accordingly and added

[user]
signingkey = NNN
[commit]
gpgsign = true
[alias]
amend = commit -S -s --amend
cm = commit -S -s
commit = commit -S -s
tag = tag -S -s
[gpg]
program = C:\\Program Files (x86)\\GnuPG\\bin\\gpg.exe

The Git User Name and eMail Address are the same which are set in the 
used GPG Certificate.

Using '-S' from the Windows CMD Shell and Git Bash leads to an error. 
Neither typing the command manually or using it through an alias works.

When I switch '-S' with '--gpg-sign=NNN' everything works as it should 
from CMD Line - but not when I use for example SmartGit and enable 'Sign 
all Commits'. After countless hours looking through the Web, I am not 
out of Ideas.

Here is the Trace:
C:\Dev\GitRepos\Test>git cm
00:30:36.873133 exec-cmd.c:237      trace: resolved executable dir: 
C:/Dev/Git/mingw64/bin
00:30:36.874133 git.c:744           trace: exec: git-cm
00:30:36.874133 run-command.c:667   trace: run_command: git-cm
00:30:36.876134 git.c:396           trace: alias expansion: cm => commit 
-S -s
00:30:36.876134 git.c:805           trace: exec: git commit -S -s
00:30:36.876134 run-command.c:667   trace: run_command: git commit -S -s
00:30:36.883142 exec-cmd.c:237      trace: resolved executable dir: 
C:/Dev/Git/mingw64/libexec/git-core
00:30:36.884143 git.c:455           trace: built-in: git commit -S -s

hint: Waiting for your editor to close the file... 00:30:36.889147 
run-command.c:667       trace: run_command: GIT_INDEX_FILE=.git/index 
'"C:/Dev/GitGuis/GitExtensions/GitExtensions.exe" fileeditor' 
C:/Dev/GitRepos/Test/.git/COMMIT_EDITMSG
00:30:45.064284 run-command.c:667       trace: run_command: 'C:\Program 
Files (x86)\GnuPG\bin\gpg.exe' -bsau ''
gpg: skipped "": Invalid user ID
gpg: signing failed: Invalid user ID
error: gpg failed to sign the data
fatal: failed to write commit object

Windows: Windows 10 Pro, 21H1, 19043.1100
Git Version: git version 2.32.0.windows.2
GPG Version: gpg (GnuPG) 2.2.28, libgcrypt 1.8.8, Copyright (C) 2021 g10 
Code GmbH

Thank you in advance!
Oliver Niebuhr
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help