2
0
記事投稿キャンペーン 「2024年!初アウトプットをしよう」

【GitHubエラー】git@github.com: Permission denied (publickey).の解決法

Last updated at Posted at 2024-01-08

概要

GitHubにプッシュしようとした際にgit@github.com: Permission denied (publickey).というエラーが発生したので、その解決法の備忘録です。

注意

この記事は新卒エンジニアが執筆しています。
そのため内容に間違いや不備がある場合があります。
もし間違いを発見しましたら、どんどん指摘していただけると幸いです。

前提条件

以下のことができている人向けの記事です。

  • SSH鍵の作成
  • SSH鍵とGitHubと連携
    • できている場合はssh -T git@github.comを実行すると、Hi ユーザ名! You've successfully authenticated, but GitHub dose not provide shell access.と表示されます。

原因

エラーの原因はSSHエージェントが動作していなかったことでした。
SSHエージェントとは、SSHキーを管理してくれるプログラムのことです。通常はユーザがPCにログインする際に起動するのですが、なんらかの原因でこれが起動していなかったみたいです。

解決手段

1. SSHエージェントが起動しているかの確認

ssh-add -l

上記のコマンドを実行してみてください。The agent has no identities.と表示される場合は、SSHエージェントが起動していないか、エージェントに鍵が登録されていません。

2. SSHエージェントを起動

SSHエージェントを起動するには以下のコマンドを実行します。

eval `ssh-agent`

3. SSHエージェントに秘密鍵を登録

SSHエージェントに秘密鍵を登録するには以下のコマンドを実行します。

ssh-add -K ~/.ssh/id_rsa   # 各自の秘密鍵のパスに合わせて変更してください

Identity passphrase for 秘密鍵のパスと表示されれば、登録完了です。
この時点でもう一度GitHubにPushしてみると、成功すると思います。

まとめ

SSH鍵を作成していて、GitHubとの連携もしているのにgit@github.com: Permission denied (publickey).が発生する場合は、SSHエージェントを疑ってみてください。

2
0
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
2
0