Gẹgẹbi awọn oludasile a ni deede lati jo ni ayika awọn iroyin GitHub lọpọlọpọ lori ẹrọ kanna. Fun apẹẹrẹ a ni akọọlẹ GitHub ti ara wa fun iṣẹ ti ara wa lẹhinna iroyin GitHub miiran ti a lo fun iṣẹ alabara wa.
Nkan yii n pese awọn itọnisọna igbesẹ-ni-igbesẹ lori bii o ṣe le seto ati ṣiṣẹ pẹlu awọn akọọlẹ GitHub pupọ lori ẹrọ kanna.
Ni oju iṣẹlẹ yii a yoo ṣẹda awọn iroyin GitHub oriṣiriṣi meji lori ẹrọ kanna ati lẹhinna yipada laarin awọn meji.
Ni akọkọ, a nilo lati ṣẹda awọn ikọkọ SSH ikọkọ wa / ti gbangba fun tiwa ti ara ẹni iroyin.
A le ṣe eyi nipa ṣiṣe pipaṣẹ wọnyi ni ebute kan:
$ ssh-keygen -t rsa -C 'email@gmail.com' -f 'id_rsa_personal'
Adirẹsi imeeli ti o wa loke ni ọkan ti o lo lati buwolu wọle si akọọlẹ GitHub ti ara ẹni rẹ.
Nigbati o beere fun ipo lati fi awọn bọtini pamọ, gba ipo aiyipada nipasẹ titẹ tẹ. A ṣẹda bata bọtini ikọkọ / ti ara ẹni ni ipo ssh aiyipada ~/.ssh/
.
Awọn bọtini SSH ti ara ẹni wa ni:
~/.ssh/id_rsa_personal.pub
ati ~/.ssh/id_rsa_personal
Nigbamii ti, a ṣẹda awọn ikọkọ SSH ikọkọ wa / gbangba fun tiwa ibara iroyin:
$ ssh-keygen -t rsa -C 'email@company.com' -f 'id_rsa_company'
Adirẹsi imeeli ti o wa loke ni ẹni ti o lo lati buwolu wọle si iroyin GitHub alabara rẹ.
Aṣẹ ti o wa loke ṣẹda awọn bọtini SSH alabara wa ninu ~/.ssh/
.
Awọn bọtini SSH alabara wa ni:
~/.ssh/id_rsa_company.pub
ati ~/.ssh/id_rsa_company
Wọle si akọọlẹ GitHub ti ara ẹni rẹ ki o ṣafikun id_rsa_personal.pub
rẹ bọtini ti ara ẹni ti ara ẹni.
Nigbamii, buwolu wọle si akọọlẹ GitHub alabara rẹ ki o ṣafikun rẹ id_rsa_company.pub
ibara àkọsílẹ bọtini.
Ti o ko ba ni idaniloju bi o ṣe le ṣe, lẹhinna ka fi sori ẹrọ Git ati Ina Awọn bọtini SSH .
Faili atunto SSH wa ni ~/.ssh/
. Ti o ko ba ri faili atunto kan, lẹhinna ṣẹda ọkan:
$ cd ~/.ssh/ $ touch config
// Creates the file if not exists $ nano config
// Opens the file for editing
Ṣafikun awọn profaili GitHub oriṣiriṣi rẹ ninu faili atunto SSH:
# Personal account Host github.com-personal HostName github.com User git IdentityFile ~/.ssh/id_rsa_personal # Company account-1 Host github.com-company HostName github.com User git IdentityFile ~/.ssh/id_rsa_company
Bẹrẹ oluranlowo ssh rẹ nipa ṣiṣiṣẹ eval '$(ssh-agent -s)'
.
Lẹhinna ṣafikun awọn bọtini SSH rẹ si oluranlowo ssh:
ssh-add ~/.ssh/id_rsa_personal ssh-add ~/.ssh/id_rsa_company
Eyi yoo forukọsilẹ awọn bọtini SSH rẹ pẹlu ssh-agent lori ẹrọ naa.
Nisisiyi ti a ti ṣẹda awọn bọtini SSH wa fun ara ẹni ati ile-iṣẹ ati forukọsilẹ wọn pẹlu oluṣowo ssh, a le ni rọọrun yipada laarin awọn iroyin GitHub meji lori ẹrọ kanna.
A nilo lati rii daju pe a ni bọtini SSH oniwun nikan ti a ṣafikun ninu oluranlowo ssh ni akoko kan.
Fun apẹẹrẹ, ti a ba n ṣiṣẹ lori idawọle ti ara ẹni a ṣe:
$ ssh-add -D
//removes all ssh entries from the ssh-agent $ ssh-add ~/.ssh/id_rsa_personal
// Adds the personal ssh key
Bakanna, ti a ba n ṣiṣẹ lori iṣẹ alabara wa, a ṣe:
$ ssh-add -D
//removes all ssh entries from the ssh-agent $ ssh-add ~/.ssh/id_rsa_company
// Adds the company ssh key
Ati pe eyi ni bi a ṣe le ṣakoso ọpọlọpọ awọn iroyin GitHub pupọ lori ẹrọ kanna ati yipada laarin wọn lakoko ti n ṣiṣẹ lori awọn iṣẹ akanṣe.