2013-04-29 4 views
5

Я использую Egit с Eclipse для использования git и доступа к github. Все работает нормально, но одна вещь, которую я хочу опустить, чтобы ввести id_rsa ключевую кодовую фразу каждый раз, когда я нажимаю свою фиксацию на github.Как сделать eclipse помнить пароль ssh keyphphase?

Я прошу ввести кодовую фразу каждый раз, когда я перезапускаю Eclipse и пытаюсь нажать.

Passphrase Request

Как я могу сделать затмение помнить ключевую фразу, так что я не придется вводить вручную?

Благодаря

+0

Вы можете создать SSH-ключ, который не имеет ключевой фразы, если все остальное не удастся! –

+2

Да, это способ, но это не безопасный вариант. это? – TheKojuEffect

+0

Чтобы быть справедливым, если вы беспокоитесь о безопасности, вы должны быть готовы мириться с дополнительным шагом ввода пароля. –

ответ

0

Используйте SSH агента.

Добавить свой ключ к агенту с помощью ssh-add. (Это будет запрашивать у вас парольную фразу.)

Впоследствии агент должен выполнить всю аутентификацию. (Нет ключевой фразе не нужна.)

Детали:

  • попытки получить доступ к хранилищу вручную: cd $your_repository; git fetch -> он должен попросить кодовую фразу
  • не вводить ssh-add -l -> он должен вывести «Агент имеет никакого тождества «.
  • введите ssh-add -> он должен просить вас за ключевую фразу
  • войти ssh-add -l -> он должен перечислить один идентификатор (ключ, который вы только что добавили)
  • попытки получить доступ к хранилищу снова: cd $your_repository; git fetch -> он теперь должен работать без запроса вашей кодовой фразы
  • попытайтесь получить доступ к вашему репозиторию из затмения. -> снова, никакой кодовой фразы не потребуется.
+0

Спасибо, но все же я не могу понять, как это сделать. Не могли бы вы объяснить чуть подробнее? – TheKojuEffect

+1

'git fetch' не запрашивал мою кодовую фразу, потому что я настроил для запоминания кодовую фразу, когда я вошел в систему ubuntu. Также 'ssh-add -l' показывает добавленный ключ. Проблема только при нажатии «Eclipse». – TheKojuEffect

+0

В этом случае вы должны поднять ошибку против egit. (Но сначала проверьте возможные варианты egit в eclipse.) – michas

5

Даже если ssh-add -l содержит ключ, защищенный паролем, EGit может не почитать его и по-прежнему запрашивать кодовую фразу.

Для интеграции с ОС брелока на Ubuntu или Mac OS X поместить

export GIT_SSH=/usr/bin/ssh 

к вашему ~/.bash_aliases или, когда это применимо для вашей операционной системы.