首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >git with IntelliJ IDEA:无法从远程存储库读取

git with IntelliJ IDEA:无法从远程存储库读取
EN

Stack Overflow用户
提问于 2014-12-19 21:18:50
回答 25查看 189.1K关注 0票数 269

几个星期以来,我无法从远程存储库中拉入或推送到远程存储库。我认为在升级到IntelliJ IDEA 14时会发生这种情况,但我也可以用IDEA 13.1.5重现这个问题。

工具提示显示"Fetch failed :无法从远程存储库读取“。

Version Control选项卡中的异常显示为

代码语言:javascript
复制
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可执行文件。

有没有人知道问题出在哪里?

EN

回答 25

Stack Overflow用户

回答已采纳

发布于 2015-02-03 16:21:44

IntelliJ的内置SSH客户端看起来像是hash its known_hosts,但我使用的是明文形式的主机名。

当我删除文件并让IntelliJ创建一个新文件时,只有我的(散列的) GitLab服务器,没有其他东西,它起作用了。

它也不可能混合在一起-将一些未散列的条目与IntelliJ的散列条目放在一起。因此,您必须配置其他SSH客户端to use hashed hosts

票数 24
EN

Stack Overflow用户

发布于 2015-07-06 13:42:55

SSH,然后在Settings --> Version Control --> Git可执行文件下拉菜单中选择Native

如果这不起作用,请确保您的本机sshgit客户端是足够新的版本。

票数 733
EN

Stack Overflow用户

发布于 2015-12-23 00:51:06

转到Preferences > Version Control > Git。确保SSH可执行文件设置为“Native”。(如果已经如此,请将其切换为“Built-in”,应用它,然后再次切换回“Native”)。

如果这还不能解决你的问题,我会建议你下载一个Git客户端,比如GitHub客户端(免费桌面应用),并尝试通过该应用同步你的项目。然后返回到IntelliJ并检查它是否工作。

票数 69
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27566999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档