GitHubにSSH接続していないと、pushした際、以下のようなエラーになると思います。
$ git push origin master
git@github.com: Permission denied (publickey).
なので今回は、GitHubにSSH接続する方法をご紹介いたします。
秘密鍵と公開鍵を作成する
秘密鍵、公開鍵というのは、公開鍵暗号方式で使われる2種類のデータのことです。
簡単に言えば、公開鍵が鍵穴、秘密鍵が鍵のようなものです。
秘密鍵は自分で保持し、公開鍵はGitHubに送ります。
まずは、この2つの鍵を作成します。
以下のコマンドで、鍵を保存するフォルダに移動します。
$ cd ~/.ssh
以下のコマンドで、鍵を生成します。
$ ssh-keygen -t rsa
以下の表示がでるので、Enterを押します。
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/yusukehorita/.ssh/id_rsa):
さらに以下の表示がでるので、Enterを押します。
Enter passphrase (empty for no passphrase):
さらに以下の表示がでるので、Enterを押します。
Enter same passphrase again:
Your identification has been saved in /Users/yusukehorita/.ssh/id_rsa.
Your public key has been saved in /Users/yusukehorita/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:Q+ZcarwT4Snlqa8hT1nFhT+xzpSGou3xQaKdyCONdns yusukehorita@hottayuusukenoMacBook-Air.local
The key's randomart image is:
+---[RSA 2048]----+
| .. |
| .... |
| = +o + |
| XoBo B |
| +.*S= = . |
| + O*=+. o |
| ..o=+oo . |
| +.oE.. |
| oo. |
+----[SHA256]-----+
これで秘密鍵と公開鍵が生成されました。
ちゃんと作成されたか、確認してみましょう。
$ ls
id_rsa id_rsa.pub
以上の2つのファイルが表示されたら、OKです。(id_rsa が秘密鍵、id_rsa.pub が公開鍵)
公開鍵をGitHubにアップする
以下のコマンドで公開鍵をコピーします。
$ pbcopy < ~/.ssh/id_rsa.pub
https://github.com/settings/keys
ここから、GitHubの公開鍵の設定ページに飛んでください。
画面の右上の New SSH key を押してください。
すると、次のような画面になるので、Title に公開鍵の名前(ご自身で決めてください)、key に先ほどコピーした公開鍵を貼り付けてください。
最後に、Add SSH key を押してください。
これで GitHubにSSH接続できました。
参考記事
https://qiita.com/shizuma/items/2b2f873a0034839e47ce
https://it-trend.jp/encryption/article/64-0089