読者です 読者をやめる 読者になる 読者になる

github Permission denied って急に言われました(´・ω・`)

昨日までgithubに対してpull/pushもできていたのですが、急にエラーになるようになりました。ちなみにremoteのrepositoryはsshです。しかもエラーになるのはこの端末のみ。

$ g pull
Enter passphrase for key '/Users/rochefort/.ssh/github_rsa':
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

とりあえず公式をみる

Generating SSH Keys · GitHub Help
 
見慣れない記載があります。

# start the ssh-agent in the background
eval "$(ssh-agent -s)"
# Agent pid 59566
ssh-add ~/.ssh/id_rsa

やってみると動きました。
本来的にはssh-agent/ssh-add はパスフレーズの入力をキャッシュさせたりするのに利用するようですが、そもそも秘密鍵の場所がどこにあるかわかんないのが原因のようです。

ググってみると

Git and ssh authorizating - Stack Overflow
ssh-add 派が大多数のようですが、毎度 ssh-agent/ssh-add するのは面倒です。

ターミナルからgithubのリポジトリにアクセスする設定(sshの設定) - Qiita
かつては、.ssh/config に記載する方法がgithubのヘルプにあったようです。

$ cat ~/.ssh/config
Host github.com
User git
IdentityFile ~/.ssh/github_rsa

.ssh/config に記載する方法で運用してみます。
ほかのマシンは、そんなことしてないんだけどなぁ。gihub_rsa って名前かな。