Я розробник, і я зазвичай підписую свої Git зобов’язані за допомогою мого ключа GPG. Мені вдалося змусити GPG-агента належним чином працювати на OSX, так що він запитує мене лише один раз на день, але у мене виникають проблеми з тим же, що працює над Ubuntu 16.04.
Ось що я роблю:
- У мене налаштування GPG-ключів / і т.д.
- Я в каталозі Git.
- Я додаю кілька файлів до Git.
Потім я переходжу до них (
git commit
), і отримаю запит пароля GPG, який виглядає приблизно так:$ git ci You need a passphrase to unlock the secret key for user: "Randall Degges <r@rdegges.com>" 4096-bit RSA key, ID 8F700DA2, created 2016-04-05 [master 1740961] blah 1 file changed, 1 insertion(+)
Проблема полягає в тому, що кожного разу, коли я виконую зобов’язання, мені знову пропонується пароль для GPG.
Що я хотів би зробити, це налаштувати GPG Agent на кешування мого пароля протягом 1 повного дня, тому його потрібно вводити лише один раз.
Я прочитав багато документації та публікацій в блогах, і ось, що я спробував поки що ...
Спочатку я змінив свій ~/.zshrc
файл (використовую zsh), щоб встановити наступне:
# GPG Agent
export GPG_TTY=$(tty)
export GPGKEY=8F700DA2
Тепер, з того, що я прочитав, цей лише сам повинен зробити трюк після перезавантаження gpg-агента, але це не так.
Отже, наступне, що я зробив - це визначити ~/.gnupg/gpg-agent.conf
файл, як пояснено на man gpg-agent
сторінці:
# Set the default cache time to 1 day.
default-cache-ttl 86400
default-cache-ttl-ssh 86400
# Set the max cache time to 30 days.
max-cache-ttl 2592000
max-cache-ttl-ssh 2592000
Це також не впливає.
Я також пробував різні методи блогу тощо, але, здається, нічого не працює. Чи може хтось дати мені вказівки на речі, які мені можуть бути відсутні?