我发现了很多有关如何通过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