Настройка git over ssh в Rubymine в Windows - PullRequest
1 голос
/ 06 марта 2012

Я нашел много тем о том, как настроить git поверх ssh с помощью msysgit и putty / plink, но rubymine, похоже, использует свою собственную реализацию git и ssh (см. Сообщение об ошибке ниже).

В настоящее время у меня естьУстановлены шпаклевка, msysgit, TortoiseGit и rubymine.Мой репозиторий имеет два пульта:

[remote "origin"]
    url = ssh://mygituser@255.255.255.255:1234/path/to/repo.git
[remote "origin_putty"]
    url = putty-alias:path/to/repo.git
    puttykeyfile = path/to/my/putty/keyfile.ppk

В putty соединение "putty-alias" определено с тем же пользователем, хостом и портом, которые используются в origin, а также снова устанавливает ключ ssh (может не бытьнеобходимо).Использование TortoiseGit для нажатия на origin_putty работает нормально, так как загружает ssh-ключ putty и запрашивает мою фразу-пароль.Однако, когда я пытаюсь использовать origin из rubymine, он запрашивает пароль mygituser, поскольку не определен ключевой файл.

Я уже пробовал следующие решения

  • Настройка GIT_SSH на plink, запуск театрализованного представления и загрузка ключа туда (без изменений)
  • с использованием строки puttykeyfile в определении origin (без изменений)
  • с использованием origin_puttyиз rubymine (не разрешает putty-alias)

Причина, по которой я думаю, что rubymine использует собственную реализацию ssh, заключается в сообщении об ошибке, которое я получаю при неудачной аутентификации: SSH: методы аутентификации: [publickey, keyboard-интерактивный, пароль] последний успешный метод:

java.io.IOException: Authentication failed: 
    at org.jetbrains.git4idea.ssh.SSHMain.authenticate(SSHMain.java:280)
    at org.jetbrains.git4idea.ssh.SSHMain.start(SSHMain.java:155)
    at org.jetbrains.git4idea.ssh.SSHMain.main(SSHMain.java:135)
fatal: The remote end hung up unexpectedly

1 Ответ

3 голосов
/ 06 марта 2012

Вы правы: по умолчанию RubyMine использует библиотеку Java trilead-ssh2 и не знает о настройках Putty.

Вы можете перейти на использование собственного SSH в Настройках |Контроль версий |Git |SSH исполняемый файл |Родной Но обратите внимание, что он не очень хорошо работает с парольными фразами, поэтому, если ваш закрытый ключ защищен парольной фразой, вы должны использовать Pageant или подобное программное обеспечение.

...