どうもみづきです。ラズパイで書いたコードをPUSHしようとしたら、
延々とパーミッションエラーになってしまい死ぬほどハマったので備忘録として残します。
結論を言うとwin向けのやり方でvi ~/.ssh/configを編集して秘密鍵へパスが通っていないのが原因でした。
コピペするときは良く考えよう(n敗)
NG
Host github.com HostName github.com IdentityFile IdentityFile ~/.ssh/id_rsa ←ここがラズパイだとパスが違う User git
OK(よくわからんけど動いたのでヨシ!)
Host github.com HostName github.com IdentityFile /home/pi/.ssh/id_rsa User git
SSHするまでの手順
(1)SSHキーファイルを作る
ssh-keygen
パスフレーズいらない場合はエンター連打でOK(既にキーがある場合上書きされるので注意)
ラズパイの場合以下のファイルパスに生成されるので、確認しに行こう
/home/pi/.ssh
(2)SSH設定ファイルを追加する
vi ~/.ssh/config
Host github.com HostName github.com IdentityFile /home/pi/.ssh/id_rsa User git
僕の場合は上記設定で接続できました
(3)GitHubに公開鍵を登録する
![](https://toriyaru.com/wp-content/uploads/cocoon-resources/blog-card-cache/f543dc43b7b380979be974b14c3fd120.png)
Build software better, together
GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.
catで表示してコピペしよう(他にもっと良さげな方法あると思われます)
cat /home/pi/.ssh/id_rsa
(4)GitHubへ接続テストをする
以下のコマンドが上手く通ればOK
ssh -T git@github.com
失敗した場合以下のサイトのトラブルシュートが隙が無くて良かったです
![](https://toriyaru.com/wp-content/uploads/cocoon-resources/blog-card-cache/533c9857a6635c7d83a31836f9bd33d9.png)
Permission denied (publickey) の 対処方法はだいたいこれ - ORM ねこの遊び庭
GitHub 連携で Permission denied が発生する場合の対処方法です。原因はだいたいこれですね。
HTTPSでcloneしちゃった
こちらのサイトの「4. git remote originの設定変更」の方法で無事リカバーできました、めっちゃわかりやすくて助かります
最後に
Gitとかでハマるととても疲れたけど、とりあえず動いて良かった
久々にブログやったら、コマンドとかを良い感じに表示する方法忘れたのでそのうち修正します!
コメント