SmartGit не будет аутентифицироваться с помощью ssh - PullRequest
16 голосов
/ 09 января 2012

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

Но я потратил несколькоУже часы, чтобы просто клонировать репо через Smartgit.В качестве удаленного Git я использую URL, который я обычно использую на сервере: me @ my-server: the-repo, затем через некоторое время я получаю диалоговое окно «SSH Authentication» и выбираю свой закрытый ключ, как я сделал бы для pagentи вставьте мой пароль.Но когда я нажимаю «Войти», он просто пытается подключиться некоторое время, а затем снова показывает мне диалоговое окно «SSH Authentication».Нет сообщения об ошибке или что-то.

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

Ответы [ 5 ]

22 голосов
/ 09 января 2012

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

13 голосов
/ 10 января 2012

Да, вот и все!

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

в Windows вы можете выполнить следующую процедуру:

  1. Установить msysgit из Здесь
  2. Чтобы сгенерировать пару открытого / закрытого ключа, необходимую для многих серверов git (например, Assembla), используйте PuTTYgen , который вы найдете здесь : нажмите Generate и перемещайте мышь , пока она не сообщит вам, что ключ сгенерирован.При желании введите ключевую фразу для защиты вашего закрытого ключа
  3. Сохраните или скопируйте открытый ключ по вашему желанию
  4. Сохраните закрытый ключ для использования с SmartGit с помощью голосового меню Преобразования / Экспорт ключа OpenSSH
  5. Используйте последний файл для аутентификации в SmartGit
4 голосов
/ 19 октября 2016

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

  1. Редактировать | Настройки | Команды | Аутентификация, выберите Use System SSH Client
  2. В системных переменных Windows, установите GIT_SSH = plink (где расположение plink.exe в putty)

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

4 голосов
/ 29 апреля 2013

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

3 голосов
/ 16 января 2017

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

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

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

SmartGit SSH passphrase prompt

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

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

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

...