2012-03-06 59 views
1

我發現了很多有關如何通過msysgit和putty/plink設置git而不是ssh的線程,但是rubymine似乎使用了它自己的git和ssh實現(請參閱下面的錯誤消息)。通過ssh在Windows上的Rubymine上安裝git

目前我已經安裝了putty,msysgit,TortoiseGit和rubymine。我的倉庫有兩個遙控器:

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

在膩子連接「膩子別名」與在origin使用相同的用戶,主機和端口定義,也再次設置SSH密鑰(可能沒有必要)。使用TortoiseGit推送到origin_putty工作正常,因爲它加載膩子ssh密鑰並提示輸入我的密碼。但是,當我試圖從rubymine使用origin時,它會提示輸入密碼mygituser,因爲沒有定義密鑰文件。

我已經嘗試以下解決方案

  • 使用puttykeyfile線的origin(無變化)
  • 定義設置GIT_SSH到砰砰,運行盛會並載入鍵那裏(沒有變化)
  • 使用origin_putty從RubyMine的(沒有解決putty-alias

究其原因,我認爲的RubyMine使用它自己的SSH實現是錯誤消息我得到認證不成功: SSH:認證方法:公鑰,鍵盤交互,密碼]最後成功的方法:

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 

回答

2

你是對的:默認的RubyMine使用trilead-ssh2 Java庫,並不知道Putty設置。

您可以切換到使用本機SSH在設置|版本控制| Git | SSH可執行|原生 但請注意,它不適用於密碼,所以如果您的私鑰是密碼保護的,則必須使用選美或類似軟件。