CygwinのgitからgithubにSSHでアクセス

CygwinでインストールしたgitでgithubリポジトリSSHでクローンしようとすると以下のようなエラーが出てうまくいかない。

ssh: Could not resolve hostname github.com: Non-recoverable failure in name resolution

どうやらCygwin最新版のopenssh(5.5以上?)だとCygwinでインストールしたgitからgithubにうまくSSHでアクセスできないことがあるようだ。

http://stackoverflow.com/questions/1493645/git-fatal-remote-end-hung-up

解決策として、代わりにplink(Puttyについてくるやつ)をGITが使用するSSHプログラムとして指定するとうまくいった。

以下簡単な手順。

  1. Puttyをダウンロード。

  2. PUTTYGEN.exeでパブリックキーとプライベートキーを生成、保存。

  3. Githubにパブリックキーを登録。

  4. PAGEANT.exeを起動してプライベートキーを読みこませる。

  5. PUTTY.exeでgithub.comにgitユーザでアクセスできるか確認。

  6. GIT_SSH環境変数PLINK.exeのパスを指定。

これで無事にSSHgithubリポジトリにアクセスできれば成功。

PAGEANT.exeが起動していない状態でgithubSSHアクセスすると”FATAL ERROR: Disconnected: No supported authentication methods available (server sent: publickey)”と言われるので注意。

参考URL: http://help.github.com/ssh-issues/