##リモートへpushする際に、エラー発生
$ git push origin master
このようにリモートリポジトリへpushを試みたところ、エラーが出た。
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
公開鍵の認証ができませんでしたということらしい。
GitHubにssh接続するためには鍵の登録が必要とのことなので、その手順をまとめておく。
##公開鍵・秘密鍵を作成する
ターミナルを立ち上げ、以下のコマンドで鍵を生成する。
$ ssh-keygen -t rsa
//結果
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/*****/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/*****/.ssh/id_rsa.
Your public key has been saved in /Users/*****/.ssh/id_rsa.pub.
途中Enterキーの入力を3回求められる。
2・3回目はpassphraseの設定(パスワード設定のようなもの)ですが、ここでは何も入力せずEnterキーを押す。
##公開鍵をGitHubに登録する
###公開鍵の内容をクリップボードにコピーする
念のため、公開鍵が生成できているか確認する。
$ ls ~/.ssh
id_rsa id_rsa.pub
//この2つのファイルが存在していれば、鍵が生成できている。
//id_rdaが秘密鍵で、id_rsa.pubが公開鍵
鍵が生成できていると確認できたので、公開鍵の内容を以下のコマンドでコピーする。
//Macの場合
$ pbcopy < ~/.ssh/id_rsa.pub
//Windowsの場合
$ clip < ~/.ssh/id_rsa.pub
###GitHubに登録する
以下のページで登録をする。
https://github.com/settings/keys
画面右上の**「New SSH Key」**をクリック。
- Titleには任意の名前を入力。
- Keyの欄に、クリップボードの内容を貼り付ける。
- Add Key ボタンをクリック。
##参考記事