Если ❤️моя статья оказалась полезной, ставьте лайк и подписывайтесь. Это самый большой стимул для меня продолжать техническое творчество.
причина
Склад кода gitlab для компании, склад кода github для частных лиц;
Затем недавно github был медленным и был河蟹
После этого потеря пакетов усилилась. Поэтому, чтобы не влиять на использование, было добавлено внутреннее облако кода.gitee
;
Бывало, что я перенастроил ключ склада, и сделал запись, чтобы было удобно менять машину и сбрасывать систему перед использованием.
сгенерировать ключ
Ради иллюстрации я предполагаю, что все ключи нужно перенастроить. Если на машине уже настроены другие ключи, сгенерируйте новый ключ напрямую (будьте осторожны, чтобы не перезаписать
已经生成好
ключ)
Сгенерируйте ключ rsa с помощью команды терминала ssh
ssh-keygen -t rsa -C "адрес электронной почты 1" -f ~/.ssh/id_rsa_github
-f — адрес хранения ключей. По умолчанию当前路径
. Продолжайте, процесс выглядит следующим образом:
В настоящее время~/.ssh
В каталоге будут сгенерированы два файла, соответствующие открытому ключуid_rsa_github.pub
и закрытый ключid_rsa_github
.
сообщить открытый ключ серверу git
Откройте файл открытого ключа и скопируйте его содержимое.
vim id_rsa_github.pub
авторизоватьсяgit服务器
(В этом примере github). Учетная запись GitHub> Опции настройки> SSH и GPG ключей,公钥字符串
Вставьте ключ в поле ввода, сохраните и выйдите.
по командеssh -T git@github.com
контрольная работа,
Если появляется указанное выше приглашение, ключ успешно добавлен.
Настроить несколько ключей
мы повторяем шаги生成秘钥
,将公钥告诉git服务器
После генерации и настройки нового ключа.
существует.ssh
новый каталог нижеconfig文件
, содержимое файла следующее:
Настройте следующее:
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github
user coderdao
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_gitee
user coderdao
HostName указывает доменное имя, используемое для секретного ключа, поэтому вы можете различать разные доменные имена, используя разные секретные ключи.
После сохранения протестируйтеssh -T git@github.com
,ssh -T git@gitee.com
Как показано на рисунке выше, конфигурация нескольких клавиш GIT успешна
другие проблемы
Если настроеноconfig
После файла он не вступил в силу. местныйgit
Конфигурация программного обеспечения кэшируется, и можно использовать следующую команду, чтобы определить, действителен ли ключ:
$ cd ~/.ssh
$ eval $(ssh-agent)
Agent pid 3593
$ exec ssh-agent bash
$ ssh-add ~/.ssh/id_rsa_github
Identity added: /c/Users/Administrator/.ssh/id_rsa_github
$ ssh -T git@github.com
Hi coderdao! You've successfully authenticated, but GitHub does not provide shell access.