GitHubのpushエラーを解決する・ssh接続【Rails チュートリアル第一章】

プログラミング

Rails チュートリアル学習中にGitHub接続で詰まって検索しても解決法があまり載っていなかったので解説していく。

詰まったところ

エラーになったコード(Rails チュートリアル 1.4.3~1.4.4)

$ git remote add origin https://github.com/<あなたのGitHubアカウント名>/hello_app.git
$ git push -u origin master
Permission denied (publickey). fatal: Could not read from remote repository.  Please make sure you have the correct access rights and the repository exists.

Gitは何をやっているのか

まずはGitが何かわからない人のために軽くおさらいしようと思う(間違ってたらごめん)

Gitはバージョン管理システムなんだけど

『バックアップとかしてくれるアプリなんだな』って軽く考えとけばいいと思う。

Gitは環境構築したことある人はわかると思うけどRailsアプリのフォルダ内で動いてくれる

もっと知りたい人はGitのサイトで調べるといいと思う

GitHubについて理解(SSH接続)

さてさて、本題。

今迄ローカルで動いていたGitだけど、

『パソコン壊れたぁ~』
『みんなで開発するとき不便だなぁ~』

みたいなことがある

『クラウド上でバックアップとっといておいた方が安全じゃね?』
『ついでにみんなで開発できるようにしとこうか!』

ということでGitHubを使う。

だけど、GitHubに保存するときに一般公開(Public)にしてしまうと悪い奴にイタズラされるかもしれないから、privateにする

誰かわからない奴にフォルダをいじられるわけにはいかないので鍵がないと接続できないようになっている。

まあ要は

カードキーも持ってないし暗証番号も作ってない奴は部屋に入れないよってこと

『鍵は?』とか『お前なんか知らん』って言われるわけ

いろいろ調べたら.sshというフォルダは鍵を作っておいとくためのフォルダみたい

ようやくやることがみえてきた。

.sshというフォルダで鍵を作成して、作成した鍵をGithubに登録すればいいよね!

やったこと(対策)

.sshフォルダに移動

$ cd ~/.ssh

鍵の作成

$ ssh-keygen
(いろいろ聞いてくるけどエンター連打でOK)

公開鍵を出力

$ cat id_rsa.pub

出てきた文字列(ssh-rsaから始まる)をコピー

Githubにログインして設定を見る

SSH・GPGってのがあるのでそこで写真のところに張り付ける

これでgit pushしてみよう

おまけ・Herokuについて

GitがわかればHerokuもわかるじゃないかな。

やってることは似ている。

Herokuは本番環境にデプロイする便利なツールだって思っておけばいいと思うよ。(知らんけど)

ただし、Herokuに登録しておいて、コマンドでemailとパスワードを打てば問題なく動くのでGitよりも簡単かも

まとめ

Progate学習してきて第一章でSSH接続とか結構つまづく人いると思う。

Progate3周した俺がつまづいてる(笑)

Follow me!

コメント

タイトルとURLをコピーしました