Подтвердить что ты не робот

Нет секретного ключа при подписании с 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]>

И добавив информацию о gitconfig:

[user]
    name = Pablo Olmos de Aguilera Corradini
    email = [email protected]
    signinkey = 46F257F2
[commit]
    gpgsign = true

Я получаю:

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

Как видите, клавиши фактически существуют (они также появляются при запуске gpg --list-secret-keys). Если я удалю все из gitconfig и попытаюсь сделать это только с помощью -S, я получаю ту же ошибку, что заставляет меня думать, что git передает мое имя пользователя и адрес электронной почты в gpg, а uid включает "комментарий" (Personal), поэтому он не найден:

$ gpg --list-keys "Pablo Olmos de Aguilera Corradini <[email protected]>"
gpg: error reading key: No public key

Я не уверен, что это ошибка из git, или это ожидаемый результат, и я что-то пропустил:).

PS.- Я предполагаю, что я мог бы создать еще один комментарий uid, но без, и он должен работать.

4b9b3361

Ответ 1

В вашем gitconfig есть опечатка. Должен быть signkey, а не signinkey