Я пытаюсь использовать gpg для фиксации в git, у меня уже есть имя пользователя и токен, и он работает без парольной фразы с использованием ssh, но не для gpg!
Я сталкиваюсь с ошибкой ниже
org.bouncycastle.openpgp.PGPException: missing credentials provider
at org.eclipse.jgit.lib.internal.BouncyCastleGpgKeyPassphrasePrompt.getPassphrase(BouncyCastleGpgKeyPassphrasePrompt.java:120)
at org.eclipse.jgit.lib.internal.BouncyCastleGpgKeyLocator.findSecretKeyForKeyBoxPublicKey(BouncyCastleGpgKeyLocator.java:279)
at org.eclipse.jgit.lib.internal.BouncyCastleGpgKeyLocator.findSecretKey(BouncyCastleGpgKeyLocator.java:244)
at org.eclipse.jgit.lib.internal.BouncyCastleGpgSigner.locateSigningKey(BouncyCastleGpgSigner.java:120)
at org.eclipse.jgit.lib.internal.BouncyCastleGpgSigner.sign(BouncyCastleGpgSigner.java:129)
... 33 common frames omitted
Я хочу понять эти вещи:
- Какие учетные данные / Конфигурация ожидается от jgit для использования GPG?
- Как мы можем отправить фразу-пароль и как сделатьВы уверены, что используется кэшированная парольная фраза gpg?
Я пробовал следующие вещи:
- Добавлены учетные данные для
.netrc
компьютера, имени пользователя и пароля - Включено
command.setSign(true)
- Добавлен SigningKey
command.setSigningKey("KEY")
У меня есть эти настройки:
.netrc
machine github.com
login <login>
password <personal_token>
.zshrc
# GPG
export GPG_TTY=`tty`
.gnupg/gpg-agent.conf
default-cache-ttl 28880
write-env-file /Users/[your user]/.gnupg/gpg-agent-info
pinentry-program /usr/local/MacGPG2/libexec/pinentry-mac.app/Contents/MacOS/pinentry-mac
gpg.conf
auto-key-retrieve
no-emit-version
default-key <key>
use-agent
no-tty