LoginSignup
0
1

More than 1 year has passed since last update.

GitHubに接続できないときに試すこと一覧

Posted at

リモートリポジトリを追加できているか?

GitHubで空のリポジトリを作成すると丁寧にコマンドが書いてある。

新規にリポジトリを作る場合

echo "# test" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin git@github.com:[GitHubアカウント]/[リポジトリ名].git
git push -u origin main

既存のリポジトリを登録する場合

git remote add origin git@github.com:[GitHubアカウント]/[リポジトリ名].git
git branch -M main
git push -u origin main

SSHキーは正しく登録できているか?

これも丁寧に公式に書いてある。SSHキーを生成して公開鍵をGitHubに登録する必要がある。

SSH-Keyの場所

通常は~/.ssh以下にSSH-Keyがある。.pub付きが公開鍵で、何もついていない方が秘密鍵。

$ ls -la
-rw-r--r-- 1 devuser devuser   83 Jul  9 23:16 config
-rw------- 1 devuser devuser 2602 Jul  9 22:28 id_rsa
-rw-r--r-- 1 devuser devuser  567 Jul  9 22:28 id_rsa.pub

SSH-KeyのGitHub登録

公開鍵はGitHubにアップロードする必要がある。アップロードと言っても前手順で確認した公開鍵をless等で開いて、その中身の文字列を以下のサイトのNewから貼り付けるだけでOK。

SSH configの確認

何らかの理由で~/.ssh/configが壊れるとgitコマンド実行時にエラーになる。例えば以下のようなエラーが出る。

$ git push --set-upstream origin main
no such identity: /home/myuser/.ssh/id-rsa: No such file or directory
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.

よく見れば書いてあるが、秘密鍵が存在しない or リポジトリが存在しない旨のエラーになっている。
GitHubに作ったリポジトリ名が正しいかの確認の他、~/,ssh/config に書かれている秘密鍵のファイル名や置き場所が正しいかも確認すること。

~/.ssh/config
Host github.com
 HostName github.com
 IdentityFile ~/.ssh/id-rsa  #本当に正しい秘密鍵の場所を指しているか確認すること!
 User git

例えば、上のように秘密鍵のファイル名が違う(本当はid-rsaではなくid_rsaが正しい)という罠があることも・・・。(私はこれで1時間時間を溶かしたことを自戒を込めてここに記す。)

以上。
他にも何かあったら追記していく。増えてほしくないが。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1