git with IntelliJ IDEA: Could not read from remote repository
IntelliJ's built-in SSH client seems to hash its known_hosts
, but the one I had had its host names in clear text.
When I deleted the file and let IntelliJ create a new one, with only my (hashed) GitLab server and nothing else, it worked.
It's also not possible to mix it - keep some unhashed entries together with hashed entries for IntelliJ. So, you have to configure your other SSH clients to use hashed hosts.
Go to Preferences > Version Control > Git. Make sure SSH executable is set to “Native.” (If it's already so, switch it to “Built-in,” apply it, and then again switch back to “Native.”).
If this doesn't solve your issue, I would suggest to download a Git client such as GitHub client (free desktop app) and try to sync your project through the app. Then go back to IntelliJ and check if it works.
Settings --> Version Control --> Git
, and then, in the SSH executable dropdown, choose Native
If this doesn't help, ensure that your native ssh
and git
clients are of a sufficiently recent version.
I started getting Could not read from remote repository
error recently when working with my github repository. My specs:
- IntelliJ IDEA 2017.3.4 (Ultimate Edition)
- Settings -> Version Control -> Git -> SSH executable -> Built-In
- Fedora Linux
Of course those problems occurred only when trying to push/pull/fetch etc. from IDE - executing same commands from command line worked like a charm.
Solution that worked for me
I didn't want to switch from Built-In
SSH executable to Native
, mostly because my native SSH client asks me for the password anytime I try to sync with remote repository.
I solved this problem by switching from SSH remote URL to HTTPS URL. According to this GitHub help page - it is recommended to use HTTPS URL instead of SSH one.
Changing remote URL from SSH
to HTTPS
In IntelliJ IDEA go to VCS -> Git -> Remotes..., select row containing "origin" and click on edit button. If you host your repository on GitHub, replace your SSH URL from:
[email protected]:USERNAME/REPOSITORY.git
to:
https://github.com/USERNAME/REPOSITORY.git
You can also get your HTTPS URL from your GitHub repository home page - click on "Clone or download" button and click on "Use HTTPS" link to display your repository's HTTPS URL:
UPDATE 2018-03-13
JetBrains just released IntelliJ IDEA 2017.3.5 that includes fix for SSH access to GitHub - https://blog.jetbrains.com/idea/2018/03/intellij-idea-2017-3-5-fix-for-ssh-access-to-github/