Я разработчик, и я обычно подписываю свои коммиты Git своим ключом GPG. Я смог заставить GPG Agent работать должным образом на 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 для кэширования моего пароля на 1 полный день, поэтому его нужно вводить только один раз.
Я прочитал тонны документации и сообщений в блоге, и вот что я попробовал до сих пор ...
Сначала я изменил свой ~/.zshrc
файл (я использую zsh), чтобы установить следующее:
# GPG Agent
export GPG_TTY=$(tty)
export GPGKEY=8F700DA2
Теперь, из того, что я прочитал, одно это должно сработать после перезапуска gpg-agent, но это не так.
Итак, следующее, что я сделал, я определил ~/.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
Это также не имеет никакого эффекта.
Я также пробовал различные методы блога и т. Д., Но, похоже, ничего не работает. Может ли кто-нибудь дать мне несколько советов о вещах, которые я могу упустить?