Как отключить запросы пароля при выполнении git push / pull?
35
Каждый раз, когда я хочу pushи / или pullиз терминала (в Linux), я должен ввести пароль. Как мне удалить это, чтобы оно тянуло и / или толкало без пароля?
Какой протокол используется вашим адресом репо? SSH? HTTPS?
VonC
Ответы:
23
Создайте пару секретный / открытый ключ для аутентификации без пароля.
Для Linux ваши ключи хранятся в ~/.ssh.
Если у вас уже есть файлы с ~/.sshтаким именем id_rsaи id_rsa.pub, значит, у вас уже есть пара ключей. Добавьте содержимое вашего открытого ключа (то есть id_rsa.pub) в файл ~ / .ssh / authorized_keys репозитория Git.
@slhck Ах, не думал об этом! Хотя, прежде чем публиковать дальнейшие инструкции, будет полезно узнать, какая ОС использует Whirlwin.
Джин
Спасибо за указатель. Я обновил вопрос соответственно!
Whirlwin
1
Когда я запускаю первую команду, я получаю: Вы, кажется, используете ssh для клонирования URL git: //. Убедитесь, что опция конфигурации core.gitProxy и переменная окружения GIT_PROXY_COMMAND НЕ установлены. потеря соединения
MultiformeIngegno
26
Бег
git config credential.helper store
Это сохранит ваши учетные данные в папке внутри root. Вам нужно запустить git pull / push после этой команды и дать имя пользователя / pwd в первый раз. Опубликовать это не будет предлагать пользователю / PWD. Подробности на https://git-scm.com/docs/git-credential-store
это должно быть выбрано как правильный ответ на этот вопрос. IMO, ОП хотел спросить о решении, httpsчтобы избежать необходимости вводить имя пользователя / пароль снова и снова, не переключаясь на sshрешение. 1+ за этот ответ.
Гианг Нгуен
1
Обратите внимание, что помощник хранилища учетных данных хранит пароль на диске в незашифрованном виде.
Я создал новую ветку, и после этого, когда я потянул, мне пришлось ввести имя пользователя и пароль. Затем я решаю проблему повторного клонирования ветки с ssh-адресом (который находится на соответствующем сайте репозитория).
Ответы:
Создайте пару секретный / открытый ключ для аутентификации без пароля.
Для Linux ваши ключи хранятся в
~/.ssh
.Если у вас уже есть файлы с
~/.ssh
таким именемid_rsa
иid_rsa.pub
, значит, у вас уже есть пара ключей. Добавьте содержимое вашего открытого ключа (то естьid_rsa.pub
) в файл ~ / .ssh / authorized_keys репозитория Git.Если у вас нет пары ключей, сгенерируйте ее с помощью
$ ssh-keygen -t rsa
Прочитайте это для получения дальнейших инструкций: http://inchoo.net/tools-frameworks/how-to-generate-ssh-keys-for-git-authorization/
источник
Бег
Это сохранит ваши учетные данные в папке внутри root. Вам нужно запустить git pull / push после этой команды и дать имя пользователя / pwd в первый раз. Опубликовать это не будет предлагать пользователю / PWD. Подробности на https://git-scm.com/docs/git-credential-store
источник
https
чтобы избежать необходимости вводить имя пользователя / пароль снова и снова, не переключаясь наssh
решение. 1+ за этот ответ.Вы также можете просто изменить вашу фразу-пароль и заменить ее пустой строкой:
ssh-keygen -p
источник
Я создал новую ветку, и после этого, когда я потянул, мне пришлось ввести имя пользователя и пароль. Затем я решаю проблему повторного клонирования ветки с ssh-адресом (который находится на соответствующем сайте репозитория).
Например:
источник