Skip to main content

Error: Key already in use

このエラーは、既に別のアカウントまたはリポジトリに追加されているキーを追加しようとすると発生します。

キーが使用されている場所を見つける

キーが既に使用されている場所を判断するには、ターミナルを開いて、ssh コマンドを入力します。 -i フラグを使用して、確認するキーへのパスを指定します。

$ ssh -T -ai ~/.ssh/id_rsa git@github.com
# Connect to GitHub.com using a specific ssh key
> Hi USERNAME! You've successfully authenticated, but GitHub does not
> provide shell access.

応答の_ユーザー名_は、キーが現在アタッチされている GitHub.com のアカウントです。 応答が "username/repo" のように表示されている場合、キーは、"デプロイ キー" としてリポジトリにアタッチされています。

コマンド ラインに指定されているキーのみを SSH に使用するように強制するには、-o を使用して、IdentitiesOnly=yes オプションを追加します。

ssh -v -o "IdentitiesOnly=yes" -i ~/.ssh/id_rsa git@github.com

問題の解決

Issue を解決するには、まず他のアカウントまたはリポジトリからキーを削除して、次にアカウントに追加します。

キーを転送する権限を持っておらず、権限を持つユーザーに連絡できない場合は、そのキーペアを削除して、新しいキーペアを生成します。

デプロイ キー

キーがリポジトリにデプロイキーとして一度添付されたら、他のリポジトリで使用することはできません。 デプロイ キーの設定中にこのエラーが発生した場合は、「デプロイキーの管理」を参照してください。