最佳答案
几个星期以来,我不能从远程存储库中拉或推到远程存储库中。我以为这是在升级到IntelliJ IDEA 14时发生的,但我也可以用IDEA 13.1.5重现这个问题。
提示说 “获取失败 无法从远程存储库读取。" < / p >
版本控制选项卡中的异常为
14:02:37.737: cd C:\dev\project
14:02:37.737: git -c core.quotepath=false fetch origin --progress --prune
java.io.IOException: Padding in RSA public key!
at com.trilead.ssh2.signature.RSASHA1Verify.decodeSSHRSAPublicKey(RSASHA1Verify.java:37)
at com.trilead.ssh2.KnownHosts.addHostkey(KnownHosts.java:98)
at com.trilead.ssh2.KnownHosts.initialize(KnownHosts.java:414)
at com.trilead.ssh2.KnownHosts.initialize(KnownHosts.java:440)
at com.trilead.ssh2.KnownHosts.addHostkeys(KnownHosts.java:137)
at org.jetbrains.git4idea.ssh.SSHMain.configureKnownHosts(SSHMain.java:462)
at org.jetbrains.git4idea.ssh.SSHMain.start(SSHMain.java:155)
at org.jetbrains.git4idea.ssh.SSHMain.main(SSHMain.java:137)
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
使用IntelliJ的内置终端,执行git -c core.quotepath=false fetch origin --progress --prune
,它就像它应该的那样工作。
根据堆栈跟踪,我的KnownHosts
似乎有问题,所以我从~/.ssh/known_hosts
删除了我们的git服务器,希望IntelliJ会再次插入它。但是当通过UI更新时,问题仍然出现,并且在known_hosts
中没有写入新的条目;考虑对文件进行缓存,我重新启动了IntelliJ,但没有成功。
当从终端执行另一个git fetch
时,现在我被问到是否要永久添加服务器。之后,它再次被写入known_hosts
,但IntelliJ仍然不让我更新我的项目。
我还没有在网上找到任何关于这种行为的信息,所以我猜这不是新的IntelliJ版本的已知错误。尽管如此,我更新到14.0.2,但问题仍然存在。
IntelliJ被配置为使用内置的SSH可执行文件。
有人知道问题出在哪里吗?