Я на машине с Windows 10 с установленными Gpg4win и Kleopatra, а также с самой последней версией git. В Kleopatra у меня загружены два сертификата OpenPGP, скажем, для этих писем:

  • john.doe@example.com с идентификатором AAABBBCC
  • johnny@example.org с идентификатором FFF00011

У меня есть глобальный конфиг Git с этими настройками:

  • commit.gpgsign=true
  • user.email=john.doe@example.com

Но у меня есть репозиторий git config с другим, более конкретным параметром электронной почты:

  • user.email=johnny@example.org

Но когда я пытаюсь зафиксировать что-либо в этом хранилище, я получаю всплывающее окно pinentry-qt с таким сообщением:

Пожалуйста, введите ключевую фразу, чтобы разблокировать секретный ключ OpenPGP:4096-битный ключ RSA "John Doe", ID 88888888AAABBBCC, создан 2018-04-10.

Есть ли способ заставить git запрашивать сертификат, специфичный для электронной почты, которую я использовал? В противном случае, возможно, есть способ настроить идентификатор gpgsign для каждого хранилища?

1 ответ1

0

После еще нескольких поисков я нашел несколько параметров git config, связанных с GPG, в том числе один, чтобы делать именно то, что я хочу:

git config user.signingKey FFF00011

Обратите внимание, что это настраивает параметр, который будет передан программе GPG (в данном случае Kleopatra), который будет выбран правильно, если вы используете Key-ID который Kleopatra показывает вам для сертификата, который вы хотите использовать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .