Предыдущие ответы правильно объяснили способ создания файла конфигурации для управления несколькими ключами 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-адрес хранилища в личной учетной записи в зависимости от псевдонима, указанного в файле конфигурации.