Dopo aver impostatoNo chiave segreta al momento della firma con git
$ gpg --list-keys
/home/pablo/.config/gnupg/pubring.gpg
-------------------------------------
pub rsa4096/46F257F2 2014-09-16 [expires: 2015-09-16]
uid [ultimate] Pablo Olmos de Aguilera Corradini (Personal) <[email protected]>
e mettendo l'informazioni gitconfig:
[user]
name = Pablo Olmos de Aguilera Corradini
email = [email protected]
signinkey = 46F257F2
[commit]
gpgsign = true
ottengo:
gpg: skipped "Pablo Olmos de Aguilera Corradini <[email protected]>": No secret key
gpg: signing failed: No secret key
error: gpg failed to sign the data
fatal: failed to write commit object
Come si può vedere le chiavi in realtà esiste (vengono visualizzati anche quando si esegue gpg --list-secret-keys
). Se rimuovo tutto da gitconfig
e provo a farlo solo con -S
, ottengo lo stesso errore, il che mi fa pensare che git stia passando il mio nome utente e l'email a gpg, e lo uid
include il "commento" (Personal)
, quindi non ho trovato alcun:
$ gpg --list-keys "Pablo Olmos de Aguilera Corradini <[email protected]>"
gpg: error reading key: No public key
non sono sicuro se questo è un bug da git, o è il risultato atteso e mi manca qualcosa :).
PS.- La mia ipotesi è che potrei creare un altro uid
ma senza un commento, e dovrebbe funzionare.
Per la firma è necessaria solo la chiave segreta. Pertanto l'output di 'gpg --list-keys' è irrilevante. – michas
Stai utilizzando lo stesso utente per elencare le chiavi e provare a firmare con git? –