Подтвердить что ты не робот

SmartGit не будет аутентифицироваться с помощью ssh

У меня есть веб-сервер с установленным gitolite и где я вхожу в систему, используя свой ssh-ключ. Обычно я просто использую git на самом сервере с помощью командной строки, но для нового проекта мне нужно клонировать репо на моем ПК с Windows, и я бы хотел использовать SmartGit для этого.

Но я потратил несколько часов, чтобы просто клонировать репо через Smartgit. Как удаленный git я использую url, который я обычно использую на сервере: me @my-server: the-repo, после чего через некоторое время я получаю диалоговое окно "SSH Authentication", и я выбираю свой закрытый ключ, как я бы сделал для pagent, и поставьте в мою Passphrase. Но когда я нажимаю логин, он просто пытается подключиться некоторое время, а затем снова показывает мне диалоговое окно "SSH Authentication". Нет сообщения об ошибке или что-то еще.

Я попробовал клонировать репо с теми же данными через командную строку, и это работает отлично. Так что я чего-то не хватает?

4b9b3361

Ответ 1

Необходимо сохранить мой закрытый ключ ssh в качестве ключа OpenSSH в PuTTYgen, потому что SmartGit понимает только этот формат.

Ответ 2

Да, это!

Я просто хочу подробно остановиться, чтобы помочь тем, кто начинает с нуля:

на окнах вы можете выполнить процедуру глупости:

  • Установите msysgit из здесь
  • Для генерации пары открытого/закрытого ключа по мере необходимости многими серверами git (например, Assembla) используйте PuTTYgen что вы находите здесь: нажмите Сгенерировать и переместите мышь, пока он не сообщит вам, что этот ключ сгенерирован. При желании введите ключевую фразу для защиты вашего закрытого ключа.
  • Сохраните или скопируйте открытый ключ по вашему желанию.
  • Сохранить закрытый ключ для использования с SmartGit с помощью голосового меню Конверсии/Экспорт ключа OpenSSH
  • Использовать последний файл для аутентификации в SmartGit

Ответ 3

Мне было проще сменить SmartGit | Предпочтение | Команды | Исполняемые файлы для использования "C:\Program Files (x86)\ Git\bin\git.exe", а затем установите GIT_SSH = plink в системе env.

Ответ 4

Если вы используете SmartGit в MacOS X, эта проблема вызывает отображение неожиданного диалогового окна в Finder:

"SSH - Enter passphrase for key '/Users/username/.ssh/id_rsa':"

И он появляется, когда запускается SmartGit. Это выглядит так:

SmartGit SSH passphrase prompt

Это странно и запутывает, как выглядит диалоговое окно Finder, без ссылки на SmartGit. Обычно это вызвано тем, что пароль ключа SSH не хранится в приложении Access Keychain. То, что SmartGit будет искать. Вам нужно добавить его туда, вот так:

ssh-add -K ~/.ssh/id_rsa    (assuming id_rsa is your private key file)

Вышеупомянутая команда иногда требуется после перезагрузки компьютера. См. Также следующие руководства:

Ответ 5

Если вы хотите использовать putty как ssh-клиент, выполните следующие шаги:

  • Изменить | Предпочтения | Комментарии | Аутентификация, выберите Use System SSH Client
  • В системных переменных Windows установите GIT_SSH = plink (где putty plink.exe)

После этого используйте pageant и загрузите закрытый ключ