GIT подписанные теги и парольная фраза

Как я могу сделать, чтобы git автоматически вводил мою фразу-пароль, когда я подписывал теги. Есть ли такая опция, как - пароль "моя длинная фраза", я пытался использовать ssh-keygen, но это не помогло.

Репозиторий на локальном и все делается локально.

3 ответа

Решение

На случай, если кому-то было интересно, я нашел способ решить свою проблему.

1. Создайте новый / usr / bin / gpg-with-passphrase с этим содержимым

/usr/bin/gpg   --passphrase "My Really Long passphrase"  --batch --no-tty "$@"

2. создайте новый исполняемый файл / usr / bin / gpg-with-passphrase

chmod 755 /usr/bin/gpg-with-passphrase

3. добавить эту опцию в git config

git config gpg.program "/usr/bin/gpg-with-passphrase"

используйте "--global" для глобального

таким образом, мне не нужно вводить свою длинную фразу-пароль каждый раз, когда я подписываю тег.

Как говорит mipadi, запрашивается пароль вашего ключа GPG. Вы действительно не хотите этого в своей командной строке, как вы предлагаете, так как это может сделать ее видимой для других пользователей и, следовательно, поставить под угрозу вашу безопасность. Зная это, создатели gpg и git не позволяют вам так выстрелить себе в ногу. Конечно, это вызывает вопрос о том, как сделать это в автоматическом режиме, чтобы вы не убили себя, набрав свой пароль сто раз.

gpg-agent очень полезно для этого. Вам может потребоваться установить это отдельно от gpg (например, в Ubuntu вам нужен пакет gnupg-agent). Затем убедитесь, что ~/.gnupg/gpg.conf содержит строку (без комментариев):

use-agent

С установленным gpg-agent ваша система может автоматически вызывать его для вас. Если переменная среды GPG_AGENT_INFO определяется, тогда вы хорошо идти. В противном случае запустите агент:

eval $(gpg-agent --daemon --sh)

(Это для bash; отрегулируйте так, как требуется для других оболочек.)

Теперь, когда вам нужно разблокировать ваш ключ GPG, вы должны получить всплывающее окно (или какой-либо другой способ) для ввода вашего пароля. После ввода вам не нужно вводить его снова, так как все остальные запросы будут отправлены агенту, который уже разблокировал ваш ключ.

Вас просят ввести пароль брелка GPG, а не пароль SSH. Введите, чем вместо.

Другие вопросы по тегам