Внезапно получаю «Нет больше доступных методов аутентификации» от eclipse egit из ранее работающей установки - PullRequest
0 голосов
/ 10 января 2019

Eclipse уже давно установлен. Я обновил до 2018-12 несколько недель назад. У меня давно установлена ​​ssh-аутентификация для всех моих репозиториев git (централизованно хранящихся в BitBucket Server). Работает отлично.

Сегодня мне пришлось перезагрузить свой ноутбук с Windows7 для некоторых автоматических установок, что происходит несколько раз в месяц.

Я перезапустил Eclipse и неожиданно обнаружил, что все мои репозитории git не проходят аутентификацию. Я вижу это в журнале:

!MESSAGE ssh://git@.../....git: No more authentication methods available
!STACK 0
org.eclipse.jgit.api.errors.TransportException: ssh://git@.../.....git: No more authentication methods available
    at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:254)
    at org.eclipse.jgit.api.PullCommand.call(PullCommand.java:290)
    at org.eclipse.egit.core.op.PullOperation$PullJob.run(PullOperation.java:256)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
Caused by: org.eclipse.jgit.errors.TransportException: ssh://git@.../.....git: No more authentication methods available
    at org.eclipse.jgit.transport.sshd.SshdSessionFactory.getSession(SshdSessionFactory.java:249)

Затем я пошел в один из моих локальных репозиториев в моей оболочке Cygwin и попробовал «git pull». Это прекрасно работало.

Единственное недавнее изменение, которое я мог внести, может быть связано с тем, что я установил версию git для Windows, в дополнение к git Cygwin. Я положил его в конце пути. Я не понимаю, как это может повлиять на это, поскольку Eclipse использует jgit.

Обновление

Я думаю, что только что решил проблему, но я не уверен, в чем была настоящая проблема.

Когда я установил 2018-12 несколько недель назад, мне показалось, что я заметил упоминание о предстоящих изменениях клиента ssh по умолчанию. Я заметил, что в настоящее время я настроен на использование JSch, и я подумал, что в примечаниях к выпуску сказано, что он перейдет на «Apache MINA», поэтому я решил изменить его сейчас и посмотреть, как он работает. Это работало нормально в течение пары недель.

Только что я попытался изменить это поле обратно на «JSch», а затем сделать тягу. Работало нормально. Просто чтобы быть уверенным, я изменил его обратно на «Apache MINA» и попробовал снова. Все еще не удалось. Изменил его обратно на "JSch", и он работает.

Я не знаю, что здесь происходит.

1 Ответ

0 голосов
/ 21 мая 2019

Это случилось со мной сегодня ... Понятия не имею, почему это происходит ... Я попытался удалить Eclipse и установить снова ... Та же проблема снова ... Я проверил все настройки, и все выглядело нормально. .. сообщение об ошибке было не так легко угадать ...

Что я сделал

  • Мои ssh-ключи не являются стандартными ... У меня есть папки с именами github, internal и deployed внутри ~/.ssh

  • Итак, в затмении я пошел к Window > Prefrences -> Network -> SSH2 в личных ключах, я указал путь к своим ключам ... но я не изменил каталог SSH2 home ... это виновник .. Я позже расскажу почему

    • SSH2 Home directory = ~/.ssh
    • path to private key = ~/.ssh/github/slokesh
  • Я изменил ssh-клиент в Preferences -> Team -> git, но каждый раз появлялась одна и та же ошибка ...

Итак, я вернулся к шагу 2, затем изменил каталог SSH2 home на ~/.ssh/github и path to private key на slokesh, тогда он работал ...

Надеюсь, это поможет ... если что-то неясно, пожалуйста, оставьте комментарий ...

Мне кажется, что выдаваемое ими сообщение об ошибке может быть более подробным и четким. Кроме того, в полях SSH2 home and private key path должна быть заметка, поскольку путь к секретному ключу, который они выбирают, относительно SSH2 home. Но, к сожалению, они не дают ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...