メンチカツには醤油でしょ!!

AWS/Java/Node.js/Spreadsheets/Docker/Jenkins/コミュニティ・勉強会レポを主とした技術系ブログ

Eclipse EGitでGitHubに繋ぐ

何回かやったりしたりしてるのでメモしています。

(追記してわかりやすくする可能性もアリ)

 

■ 公開鍵生成

すでにありそうな場合はid_rsaとid_rsa.pubはmvしておく。
mv id_rsa id_rsa.backup
mv id_rsa.pub id_rsa.pub.backup
してから
ssh-keygen
こんな感じっすかね。
パスフレーズも入力します。
(ちなみに以前エックスサーバーに登録した時はなしに設定すべきだったので、接続先に制約がないかは要確認です。)

 

■ 生成した公開鍵をgithub用のものにリネーム

mv id_rsa github_id_rsa
mv id_rsa.pub github_id_rsa.pub
として、
mv id_rsa.backup id_rsa
mv id_rsa.pub.backup id_rsa.pub
バックアップも戻します。
ここで vi ~/.ssh/config してSSHのconfigファイルを編集します。

Host github.com
  HostName github.com
  Port 22
  User git
  IdentityFile ~/.ssh/github_id_rsa
  TCPKeepAlive yes
  IdentitiesOnly yes

私は上記のような感じに入力しています。
(参照)
http://superbrothers.hatenablog.com/entry/20090730/1248971671

 

GitHubに生成した公開鍵を設定

よく言われるのが改行は要らないように注意。
自分の場合は、
生成した公開鍵ファイルの最後尾にコンピューター名のようなものがついていたので
それが入らないように登録した。

 

■ 生成した鍵でssh接続を試行

ssh git@github.com
ここで、
PTY allocation request failed on channel 0
と言われ接続できなかったが、先生によるとsshのバージョンが違うのが問題とのこと。
本当かどうかはわからないけど
ssh -T git@github.com
したらPTY〜の後にちゃんと
Warning: Permanently added the RSA host key for IP address '192.30.252.128' to the list of known hosts.
Hi 【私のユーザー名】! You've successfully authenticated, but GitHub does not provide shell access.
と出た。
githubはシェルは提供していないが、私のユーザー名が出たので認証は成功しています。

EclipseSSH設定

PreferenceのNetworkConnectionにSSHの鍵を貼ります。
これでEGitからユーザー・パスワードを入力せずに接続できるようになるでしょう。