GitHubでのpush時のエラーについて②

こんばんは。

本日2回目の投稿になります。

突然ですが目標として一週間に2記事はプログラミングの技術系の記事が書けるように頑張っていきます。

今はGWなので9日間で5記事がんばります!(涙目)

さて今回は前回に引き続きGitHubでの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でのpush時のエラーについて① - さかいの気ままに副業日記)でのエラーを突破してもまだなお、下の画像のようなエラーが起きました。

要約すると、「エラー分では権限がなくリモートリポジトリから読み取れませんでした。」と言われています。

これはSSH接続を行うためには公開鍵を作成しなければ行けないが、作成できていないため起きたエラーでした。

公開鍵を作成

早速公開鍵と秘密鍵を作成しました。

$ cd ~/.ssh

$ ssh-keygen -t rsa

これにより、公開鍵(id_rsa.pub.)と秘密鍵(id_rsa.)が作られました。

公開鍵をGitHubへ登録する

鍵の作成後、公開鍵をクリップボードへコピーします。

$ pbcopy < ~/.ssh/id_rsa.pub.

GitHubのサイトへ行き、公開鍵を所定の場所にペーストし完了です。

右上のアイコンをクリック(Public Profileが表示される)→ 左のサイドバーからSSH and GPG keysをクリック → New SSH keyボタンをクリック

f:id:shun_0211:20200503210301p:plain

Titleには何のための公開鍵か分かるようにキーワードを入れ、Keyのところに先ほどコピーした公開鍵をペーストします。

これで完了です。

疑問点

別のアプリを作っていたときは問題なくプッシュできていたところが謎です。

公開鍵を削除した覚えはないので、当時もGitHubには公開鍵は登録されていなかったはずです。

なぜ、前回はSSH接続できていたのかが引っかかっています。

どなたか知見持っている方いらっしゃったら教えてください。m(_ _;)m

まとめ

今回のポイントはSSH接続を行うためには公開鍵を設定しなければならないということでしょうか。

初心者なのですごく初歩的なところで詰まってしまいましたが、

これを期に秘密鍵、公開鍵についても勉強して発信していきたいと思います。

ここまで読んでくださり、ありがとうございました。

役に立ったという方はいいねを、なんかここ違うぞという方はコメント頂けるとうれしいです。では!