Ошибка «Auth Failed» с EGit и GitHub - PullRequest
       24

Ошибка «Auth Failed» с EGit и GitHub

96 голосов
/ 30 августа 2010

Я установил плагин EGit в Eclipse Helios, и я пытаюсь использовать его с моей учетной записью GitHub, но когда я пытаюсь настроить его, я получаю ошибку «Ошибка аутентификации».

Я его гуглил, но не повезло ... похоже, проблема с моей парольной фразой, но AFAIK EGit смотрит в нужное место (/home/user/.ssh/id_rsa), и у меня нет проблем при подключении ssh или git консольный клиент.

В некоторых блогах говорится, что это проблема с URI и парсером Egit, но я до сих пор не нашел решения.

Ответы [ 23 ]

132 голосов
/ 11 мая 2011

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

  1. В вашем Eclipse перейдите на Окно> Настройки> Общие> Сетевые подключения> SSH2 (или просто введите "SSH2" в окно фильтра окна настроек).

  2. В «Управление ключами» нажатие вкладки Кнопка «Создать ключ RSA ...» . При желании вы можете добавить комментарий (обычно адрес электронной почты) и пароль к вашему ключу. Passphrase будет использоваться во время аутентификации на GitHub.

  3. Скопируйте сгенерированный открытый ключ (в поле чуть ниже «Создать ключ RSA ...» кнопку) и добавьте его в свой GitHub счет.
  4. Нажмите кнопку «Сохранить личный ключ ...» сохранить ваш личный ключ RSA в файл. По умолчанию ключи хранятся в Домашний каталог SSH2 (см. «Общие») вкладка).

Вот и все! Теперь вы сможете отправить свой код в репозиторий GitHub.

27 голосов
/ 03 октября 2011

У меня была точно такая же проблема, но я нашел лекарство от сообщения об ошибке Eclipse!

В переменной среды с именем GIT_SSH должен быть указан путь к исполняемому файлу ssh [1].

Например, в Ubuntu Linux (10.10, 64-битная версия):

> export GIT_SSH=/usr/bin/ssh
> eclipse

После этого толчок в репозиторий GitHub работает так, как должен.Я проверил это с Eclipse Galileo и Indigo.

Проблема действительно раздражает, а решение далеко не хорошее.Сейчас, чтобы сделать решение постоянным, по крайней мере, для пользователей Ubuntu, необходимо сделать переменную env постоянной.Это можно сделать, добавив команду экспорта в ~ / .profile или ~ / .bashrc [2].Например:

> cd ~
> echo "export GIT_SSH=/usr/bin/ssh" >> .profile

и затем перезапустите Eclipse, чтобы вступить в силу.

Источники:

15 голосов
/ 17 сентября 2011

Я решил это, выбрав http в качестве протокола и указав имя пользователя и пароль GitHub.

9 голосов
/ 03 марта 2012

Потратив часы на поиски решения этой проблемы, я наконец-то ударил в золото, внеся изменения, упомянутые на форуме Eclipse .

Шаги:

Предварительные требования: mysysgit установлен с конфигурацией по умолчанию.

1.Создайте файл C: /Users/Username/.ssh/config (замените «Имя пользователя» вашим именем пользователя в Windows 7. (например, C: /Users/John/.ssh/config)) и поместите его в это:

Host github.com
HostName github.com
User git
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa

2. Попробуйте настроить удаленное хранилище в Eclipse.

Приветствия. Должно работать отлично.

8 голосов
/ 15 ноября 2010

Вам необходимо установить msysgit, после установки вам нужно открыть Git Bash и ввести туда следующие команды:

$ git config --global user.name "Gennadiy Zlobin" (your name)
$ git config --global user.email gennad.zlobin@gmail.com (your email)
$ ssh-keygen -C "gennad.zlobin@gmail.com" -t rsa (your email)

Теперь ваши сгенерированные ключи находятся в C:\Users\username\.ssh (в Windows 7).
Затем вы загружаете содержимое вашего открытого ключа в ваш проект на Github.
В Eclipse откройте Window->Preferences->General->Network->SSH2 и установите ~/.ssh как SSH Home

После этого перейдите к Key Management tab и Загрузить существующий ключ - установите здесь свой закрытый ключ в ~/.ssh.

После этого вы можете перенести свой проект на Github (но я установил протокол ssh, а не git + ssh).

5 голосов
/ 14 октября 2011

Я решил ту же проблему с добавлением моего ключа в ssh;

ssh-add ~/.ssh/id_rsa 

затем ввел кодовую фразу и нужно перезапустить.

4 голосов
/ 24 июля 2012

Для * nix пользователей, использующих SSH:

Убедитесь, что имя пользователя для вашей учетной записи на локальном компьютере не отличается от имени пользователя для учетной записи на сервере.Судя по всему, eGit, похоже, не в состоянии справиться с этим.Например, если ваше имя пользователя на вашем локальном компьютере - «john», а учетная запись, которую вы используете на сервере - «git», egit просто не может подключиться (для меня в любом случае).Единственный обходной путь, который я нашел, - убедиться, что у вас есть одинаковые имена пользователей как на локальном компьютере, так и на сервере.

3 голосов
/ 15 января 2011

По ссылке ниже я разместил то, что у меня сработало ...

http://www.eclipse.org/forums/index.php?t=msg&goto=648905&S=9bcfa96ab726d744d41a19c7fb02d723#msg_648905

2 голосов
/ 04 января 2012

Мой fourpenneth: мои ключи SSH были настроены в Cygwin, в C: \ cygwin \ home \ .ssh, поэтому я указал SSH на эту папку вместо стандартной (Win7) C: \ Users \ \ ssh, согласно этим инструкциям: http://wiki.eclipse.org/EGit/User_Guide/Remote#Eclipse_SSH_Configuration

и использовал протокол ssh, и он отлично работает.Попытка использовать протокол git по-прежнему выдает «Пользователь не поддерживается протоколом git».

2 голосов
/ 02 сентября 2013

Для вас, которые, как и я, уже настроили ваши ssh-ключи, но все равно получают ошибки:

Убедитесь, что вы настроили push-пульт . Это сработало для меня, когда у меня возникли проблемы Cannot получить удаленный репозиторий refs («... Passphrase for ...» и «Auth fail» в диалоговом окне «Push ...»).

При условии, что вы уже:

  1. Настройка ключей SSH с помощью Github («Окно»> «Установки»> «Основные»> «Сетевые подключения»> SSH2)

  2. Настройте ваш локальный репозиторий (вы можете следовать этому руководству для этого)

  3. Создан репозиторий Github ( то же руководство )

... вот как вы это делаете:

  • Перейти к представлению Git Repositories (Окно> Показать представление> Прочее> Git Repositories)
  • Разверните свой репозиторий и щелкните правой кнопкой мыши Remotes -> «Создать удаленный»
  • «Удаленное имя»: источник, «Настроить push»: проверено -> нажать «ОК»
  • Нажмите кнопку «Изменить ...»
  • Вставьте свой git URI и выберите протокол ssh -> нажмите «Готово»
  • Теперь нажмите «Сохранить и нажать» и СЕЙЧАС вы должны получить запрос на ввод пароля -> введите здесь парольную фразу открытого ключа (при условии, что вы ДЕЙСТВИТЕЛЬНО (и должны) установить пароль для вашего открытого ключа) -> нажмите «ОК»
  • Теперь вы должны получить окно с сообщением «Переведено на Ваш репозиторий - origin» -> , нажмите «OK»
  • Перейдите в восходящий поток , но на этот раз используйте "Настроенный удаленный репозиторий" в качестве вашего репозитория Destination Git
  • Иди принеси себе хорошо заработанную чашку кофе!
...