intellij13 でGitHubのprivateリポジトリへpushを実行した際に何故か下記のようなエラーとなりうまくpushできない事象に悩まされていました。
使用している環境は以下のとおりです。
[bash] git push --progress origin dev:dev java.io.IOException: Authentication failed: at org.jetbrains.git4idea.ssh.SSHMain.authenticate(SSHMain.java:283) at org.jetbrains.git4idea.ssh.SSHMain.start(SSHMain.java:157) 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. [/bash]
terminalからは同様のコマンドで正常にpushできるし、pullも問題なくできるので何が原因やらと悩んでいたのですが、少し設定を変更することでうまくいきました。変更した箇所は Preferences - Version Control - Git にある SSH executable です。この項目を Built-in から native へ変更しました。
こうすることで無事に intellij13 からpushできるようになりました。
ただ、intellijのヘルプには以下のとおり記述があります。
Use this drop-down list to specify the SSH version to be used with Git. The available options are:
- Built-in: select this option to have the implementation provided by IntelliJ IDEA used.
- Native: select this option to have the native implementation used. On some platforms, using the native ssh implementation may cause hang-up problems. In native case, you may need to configure a platform-specific ssh-askpass to receive prompts for passwords.
特定の環境がどのような環境であるかわかりませんが、逆にうまく行かなくなることもあるようです。今回の場合はうまく行っているのでよしとします。