Как разобраться с двумя ключами ssh?

Когда вы работаете с Git, у вас может возникнуть необходимость использовать два ключа SSH для подключения к разным удаленным репозиториям. Это особенно актуально, когда у вас есть несколько учетных записей на различных хостинг-платформах, таких как GitHub и Bitbucket, и вы хотите использовать отдельные ключи для каждой из них.

Вот как разобраться с двумя ключами SSH:

1. Сгенерируйте новые ключи SSH:
Сначала создайте новую пару ключей SSH для использования с другой учетной записью или хостинг-платформой. Вы можете использовать команду ssh-keygen для генерации нового ключа. Например, ssh-keygen -t rsa -C "[email protected]" -f ~/.ssh/id_rsa_second создаст новую пару ключей с именем id_rsa_second.

2. Добавьте новый ключ SSH в вашу конфигурацию Git:
После генерации нового ключа вам необходимо добавить его в файл ~/.ssh/config. Откройте этот файл в любом текстовом редакторе и добавьте следующие строки:

# Для первого ключа
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa

# Для второго ключа
Host bitbucket.org
HostName bitbucket.org
User git
IdentityFile ~/.ssh/id_rsa_second

В этих строках мы определяем параметры подключения для каждого из ключей. Замените id_rsa и id_rsa_second на фактические имена ваших ключей.

3. Добавьте публичные ключи в аккаунты хостинг-платформ:
Теперь вам необходимо добавить публичные ключи в соответствующие аккаунты хостинг-платформ. Скопируйте содержимое файлов id_rsa.pub и id_rsa_second.pub, расположенные в каталоге ~/.ssh/, и добавьте их в настройки SSH-ключей для каждой учетной записи на хостинг-платформах.

4. Используйте правильный ключ при клонировании репозитория:
При клонировании или работе с удаленными репозиториями вы должны указывать правильный ключ при использовании команды git clone или git remote add. Например:

git clone [email protected]:username/repo.git
git clone [email protected]:username/repo.git

Здесь [email protected] и [email protected] соответствуют хостинг-платформе, а username/repo.git - имени пользователя и имени репозитория.

Теперь у вас должны быть настроены два ключа SSH и вы можете использовать их с разными учетными записями на хостинг-платформах. Это позволит вам работать с различными репозиториями, не вызывая конфликтов между ключами и учетными записями.