Предыдущие ответы правильно объяснили способ создания файла конфигурации для управления несколькими ключами SSH. Я думаю, что важная вещь, которую также необходимо объяснить, - это замена имени хоста псевдонимом при клонировании репозитория .
Предположим, имя пользователя вашей учетной записи GitHub - abc1234 . И предположим, что ваша личная учетная запись GitHub называется jack1234
И предположим, что вы создали два ключа RSA, а именно id_rsa_company и id_rsa_personal . Итак, ваш файл конфигурации будет выглядеть так:
# Company account
Host company
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_company
# Personal account
Host personal
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_personal
Теперь, когда вы клонируете репозиторий (с именем demo) из учетной записи компании GitHub, URL-адрес репозитория будет выглядеть примерно так:
Repo URL: git@github.com:abc1234/demo.git
Теперь, делая это git clone
, вы должны изменить вышеуказанный URL хранилища следующим образом:
git@company:abc1234/demo.git
Обратите внимание, что теперь github.com заменяется псевдонимом «company», как мы определили в файле конфигурации.
Аналогично, вы должны изменить клонированный URL-адрес хранилища в личной учетной записи в зависимости от псевдонима, указанного в файле конфигурации.