はじめに
WindowsへCygwinのインストール不要。
PowerShellを使って、SSH認証の公開鍵と秘密鍵を作成し、Eclipse経由でGitHubへ接続する方法。
手順
OpenSSHのインストール
- PowerShellを管理者権限で起動する
- Chocolateyをインストールする
PS C:> Set-ExecutionPolicy RemoteSigned
PS C:> iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))
- chocolateyにてOpenSSHをインストールする
PS C:> cinst openssh
- PATHを通す
PS C:> $Env:Path += ";C:\Program Files (x86)\OpenSSH for Windows\bin"
SSH認証の公開鍵と秘密鍵の作成
- コマンド実行
PS C:> ssh-keygen
- 鍵の作成場所の指定
PS C:> Enter file in which to save the key (/.ssh/id_rsa): C:\Users\mekagazira-m\.ssh\id_rsa
- パスフレーズの指定(未入力で進む)
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
- 鍵の確認
PS C:> ls C:\Users\mekagazira-m.ssh
ディレクトリ: C:\Users\mekagazira-m\.ssh
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 2014/12/31 0:25 1671 id_rsa
-a--- 2014/12/31 0:25 409 id_rsa.pub
GitHubへの鍵の登録
- GitHubにログインして、[Settings]≫[SSH keys]≫ボタン[Add SSH key]を押下する
- 先ほど作成した公開鍵(id_rsa.pub)をKeyの部分に貼り付けて登録する。
PowerShellより登録した鍵のテスト
- 以下のコマンドを実行
PS C:> ssh -i C:\Users\mekagazira-m.ssh\id_rsa git@github.com
- 以下のメッセージが出れば良いとのこと
PTY allocation request failed on channel 0
Hi mekagazira! You've successfully authenticated, but GitHub does not provide shell access.
Connection to github.com closed.
Eclipseのsshの設定を公開鍵認証方式にする
- Eclipseの[ウィンド]≫[設定]≫[一般]≫[ネットワーク設定]≫[SSH2]≫[認証方式]の優先認証方法の選択から、passwordのチェックをはずす
GitHubにrepositoryを作成する
- テスト用に「test」リポジトリを作成する
EGitにGitHubリポジトリの設定をする
-
EGitのGitリポジトリビューの[Gitリポジトリーを複製し、このビューへ追加]を選択する
-
[URIの複製]を選択する
-
[URL]へGitHubにて作成した「git@github.com:mekagazira/test.git」をコピペして
[完了]を押下する
参考にしたサイト
http://wwld.jp/2014/08/14/powershell-openssh.html
http://design1.chu.jp/setucocms-pjt/?p=580
http://qiita.com/t-kashima/items/251acd9ce70ce8929836
設定後に見つけた以下のサイトも良さそう
http://blog.drunkardz.co/2013/07/eclipse-4-3-kepler-%E3%81%AE-%E8%A8%AD%E5%AE%9A-github-wssh-%E7%B7%A8/