Skip to main content

Ошибка: ключ уже используется

Эта ошибка возникает при попытке добавить ключ, который уже добавлен в другую учетную запись или репозиторий.

Поиск места использования ключа

Чтобы определить, где ранее был использован ключ, откройте терминал и введите команду ssh. С помощью флага -i укажите путь к ключу, который требуется проверить:

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

Имя пользователя в ответе — это учетная запись в GitHub AE, к которому в данный момент присоединен ключ. Если ответ имеет форму "имя_пользователя/репозиторий", значит ключ был присоединен к репозиторию в качестве ключа развертывания.

Чтобы принудительно использовать SSH для использования только ключа, указанного в командной строке, добавьте параметр IdentitiesOnly=yes с помощью -o:

$ ssh -v -o "IdentitiesOnly=yes" -i ~/.ssh/id_rsa git@HOSTNAME

Устранение проблемы

Чтобы устранить эту проблему, сначала удалите ключ из других учетной записи или репозитория, а затем добавьте его в свою учетную запись.

Если у вас нет разрешений на передачу ключа и возможности связаться с пользователем, у которого они есть, удалите пару ключей и создайте новую.

Ключи развертывания

Ключ, присоединенный к репозиторию в качестве ключа развертывания, нельзя использовать в другом репозитории. Если при настройке ключей развертывания возникает эта ошибка, см. раздел Управление ключами развертывания.