32

Каждый раз, когда я хочу push и / или pull из терминала (в Linux), я должен ввести пароль. Как мне удалить это, чтобы оно тянуло и / или толкало без пароля?

4 ответа4

22

Создайте пару секретный / открытый ключ для аутентификации без пароля.

Для Linux ваши ключи хранятся в ~/.ssh .

Если у вас уже есть файлы в ~/.ssh с именами id_rsa и id_rsa.pub , то у вас уже есть пара ключей. Добавьте содержимое вашего открытого ключа (это id_rsa.pub) в файл ~/.ssh/authorized_keys репозитория Git.

$ scp ~/.ssh/id_rsa.pub user@git.repo:id_rsa.tmp
$ ssh user@git.repo
$ cat id_rsa.tmp >> .ssh/authorized_keys

Если у вас нет пары ключей, сгенерируйте ее с помощью

$ ssh-keygen -t rsa

Прочитайте это для получения дальнейших инструкций: http://inchoo.net/tools-frameworks/how-to-generate-ssh-keys-for-git-authorization/

16

Бежать

git config credential.helper store

Это сохранит ваши учетные данные в папке внутри root. Вам нужно запустить git pull/push после этой команды и дать имя пользователя /pwd в первый раз. Опубликовать это не будет предлагать пользователю / PWD. Подробности на https://git-scm.com/docs/git-credential-store

5

Вы также можете просто изменить вашу фразу-пароль и заменить ее пустой строкой:
ssh-keygen -p

1

Я создал новую ветку, и после этого, когда я потянул, мне пришлось ввести имя пользователя и пароль. Затем я решаю проблему повторного клонирования ветки с ssh-адресом (который находится на соответствующем сайте репозитория).

Например:

git clone git@github.com:sshare/GLE.git

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .