GitHubとBitbucketに公開鍵を登録してSSHを使えるようにする方法です。HTTPSのように毎回パスワードを入力する手間もなくなります。
秘密鍵と公開鍵を作成する
まずはGitHubとBitbucket用の鍵を作ります。
$ ssh-keygen -f ~/.ssh/id_rsa_github ... $ ssh-keygen -f ~/.ssh/id_rsa_bitbucket ...
作成されました。
$ ls .ssh/ id_rsa_bitbucket id_rsa_bitbucket.pub id_rsa_github id_rsa_github.pub
鍵の作成について詳細は Macで秘密鍵と公開鍵を作成する (ssh-keygenの使い方) - TASK NOTES 参照
SSHの設定をする
複数の鍵を使い分けるために~/.ssh/config
を作成します。とりあえずGitHubだけという人も後々増える可能性もあるので作っておきましょう。
$ vi ~/.ssh/config
※以下を追加
Host github.com
User git
HostName github.com
IdentityFile ~/.ssh/id_rsa_github
IdentitiesOnly yes
Host bitbucket.org
User git
HostName bitbucket.org
IdentityFile ~/.ssh/id_rsa_bitbucket
IdentitiesOnly yes
GitHubとBitbucketに公開鍵を登録する
GitHubへの公開鍵登録方法
右上にある歯車アイコン→左メニューのSSH keys→Add SSH keyボタンをクリックします。Titleは何でもいいので入力して、Keyに公開鍵を貼り付けます。*.pub
のファイルです。
cat ~/.ssh/id_rsa_github.pub | pbcopy
をすればcommand + v
で貼付けられます。Add keyボタンをクリックして完了です。
Bitbucketへの公開鍵登録方法
トップページの右上にある人形アイコンのアカウントの管理をクリックします。
左メニューの下にある「SSHキー」を選択して鍵を追加ボタンをクリックします。
Labelは何でもいいので入力して、KeyにGitHubと同じように公開鍵を貼り付けます。
これで公開鍵の登録は完了です。
接続テスト
GitHubとBitbucketにSSHで接続を試してみます。次のように正しく接続できたら完了です。
$ ssh -T git@github.com Hi <ユーザー名>! You've successfully authenticated, but GitHub does not provide shell access. $ ssh -T git@bitbucket.org logged in as <ユーザー名>. You can use git or hg to connect to Bitbucket. Shell access is disabled.