どうもおはようポテト(@ohayoupoteto22)です。
先日gitで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.
「Permission denied (publickey)」…?ナニソレ??
ということで色々調べてみた結果、
公開鍵の設定
をしてあげるとこのエラーも解消されました。
ということで今回はGitの「Permission denied (publickey)」というエラーの対処法を備忘録としてまとめました。
ブログ主
手順
手順はこんな感じ。
手順
Permission denied (publickey)の対処法
調べてみたところ、ssh接続をするために公開鍵を設定する必要があるとのこと。
公開鍵(SSH key)については自分も曖昧だったので少し調べてみました。
SSHは暗号技術を使いリモートホストで安全にコマンドを実行するためのプロトコルで、「ssh」は暗号化された通信を使ってリモート接続をするコマンドです。リモートマシンにログインして、リモートマシン上でコマンドを実行したい場合に使用します。
(引用:atmarkITより)
…だそうです。
ブログ主
公開鍵を生成する
$ cd ~/.ssh
まずは.sshディレクトリに移動します。
$ ssh-keygen
公開鍵を生成するためにコマンドを叩きます。
enerating 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.
The key fingerprint is:
色々よく分からないことを聞かれますが全部Enterを押します。
The key's randomart image is:
このようなテキストの下に謎の模様のようなものが表示されればOK。
.ssh_id_rsaに公開鍵が生成されます。
公開鍵をコピーする
$ pbcopy < ~/.ssh/id_rsa.pub
先ほど生成した公開鍵をコピーします。
くるみ
Githubで公開鍵を登録する
Githubを開き公開鍵を設定してきます。
「Settings」に進む
「SSH and GPG keys」
「New SSH key」をクリック
公開鍵を設定
「Key」という項目のところに先ほどコピーした公開鍵をペーストします。
そしたら「Add SSH key」をクリックして設定完了です。
接続確認をするには
ssh -T git@github.com
上のコマンドで、公開鍵が合っているか・接続できているか確認できます。
Hi 〇〇〇! You've successfully authenticated, but GitHub does not provide shell access.
こんな感じの気さくな文章が帰ってくれば完了です。
ブログ主もその後無事にpushできました。めでたしめでたし。
くるみ
参考になれば幸いです!では⸝⸝- ̫ -⸝⸝
参考 SSH認証キーをGitHubへ設定する。(Mac用)Qiita