Ungawaphatha Kanjani ama-Akhawunti amaningi we-GitHub kuMshini Ofanayo

Njengonjiniyela imvamisa kufanele sizungeze ama-akhawunti amaningi we-GitHub emshinini ofanayo. Isibonelo sine-akhawunti yethu yeGitHub yomuntu siqu yephrojekthi yethu bese kuba enye i-akhawunti yeGitHub esiyisebenzisela iphrojekthi yamakhasimende ethu.

Lo mbhalo uhlinzeka ngemiyalo yesinyathelo ngesinyathelo sendlela yokusetha nokusebenza ngama-akhawunti amaningi we-GitHub emshinini ofanayo.



Phatha ama-Akhawunti amaningi we-GitHub

Kulesi simo sizokwakha ama-akhawunti amabili ahlukene we-GitHub emshinini ofanayo bese sishintsha phakathi kwalokhu okubili.


Khiqiza okhiye be-SSH

Okokuqala, sidinga ukudala okhiye bethu abazimele / abasesidlangalaleni be-SSH yethu komuntu siqu i-akhawunti.

Lokhu singakwenza ngokwenza umyalo olandelayo ku-terminal:


$ ssh-keygen -t rsa -C 'email@gmail.com' -f 'id_rsa_personal'

Ikheli le-imeyili elingenhla yilona olisebenzisela ukungena ngemvume kwi-akhawunti yakho ye-GitHub.

Lapho ucelwa indawo ukuze ulondoloze izinkinobho, yamukela indawo ezenzakalelayo ngokucindezela u-Enter. Umbhangqwana wokhiye wangasese / womphakathi wenziwa endaweni ezenzakalelayo ye-ssh ~/.ssh/.

Izinkinobho zethu zomuntu siqu ze-SSH yilezi:

~/.ssh/id_rsa_personal.pub futhi ~/.ssh/id_rsa_personal


Okulandelayo, sakha okhiye bethu abazimele / abasesidlangalaleni be-SSH yethu iklayenti i-akhawunti:

$ ssh-keygen -t rsa -C 'email@company.com' -f 'id_rsa_company'

Ikheli le-imeyili elingenhla yilona olisebenzisela ukungena ngemvume kwi-akhawunti yakho yeklayenti le-GitHub.

Umyalo ongenhla udala okhiye bamakhasimende ethu e-SSH ku- ~/.ssh/.

Okhiye bethu beklayenti le-SSH yile:


~/.ssh/id_rsa_company.pub futhi ~/.ssh/id_rsa_company

Faka okhiye be-SSH kuma-Akhawunti we-GitHub

Ngena ngemvume ku-akhawunti yakho ye-GitHub bese ufaka i- id_rsa_personal.pub ukhiye womuntu siqu.

Okulandelayo, ngena ngemvume ku-akhawunti yakho yeklayenti le-GitHub bese ukwengeza id_rsa_company.pub ukhiye womphakathi wamakhasimende.

Uma ungaqiniseki ukuthi ungakwenza kanjani lokhu, funda faka iGit bese Ukhiqiza okhiye be-SSH .


Buyekeza i-SSH file File

Ifayela lokuhlela le-SSH lihlala ku- ~/.ssh/. Uma ungaliboni ifayela lokumisa, bese ulidala:

$ cd ~/.ssh/ $ touch config

// Creates the file if not exists $ nano config

// Opens the file for editing

Faka amaphrofayili akho ahlukile we-GitHub kufayela le-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

Bhalisa okhiye be-SSH nge-ssh-agent

Qala umenzeli wakho we-ssh ngokusebenza eval '$(ssh-agent -s)'.

Ngemuva kwalokho engeza okhiye bakho be-SSH ku-ssh-agent:


ssh-add ~/.ssh/id_rsa_personal ssh-add ~/.ssh/id_rsa_company

Lokhu kuzobhalisa okhiye bakho be-SSH ne-ssh-ejenti emshinini.

Ukhiye owodwa we-SSH osebenzayo ku-ssh-agent ngasikhathi

Manje njengoba sidale okhiye bethu be-SSH okwabantu nabezinkampani futhi sakubhalisa nge-ssh-agent, manje sesingashintsha kalula phakathi kwama-akhawunti amabili eGitHub emshinini ofanayo.

Sidinga ukuqiniseka ukuthi sinokhiye ofanele we-SSH kuphela ongezwe ku-ssh-agent ngasikhathi.

Isibonelo, uma sisebenza kuphrojekthi yethu yomuntu siqu senza lokhu:

$ ssh-add -D

//removes all ssh entries from the ssh-agent $ ssh-add ~/.ssh/id_rsa_personal
// Adds the personal ssh key

Ngokufanayo, uma sisebenza kuphrojekthi yethu yamakhasimende, senza:

$ ssh-add -D

//removes all ssh entries from the ssh-agent $ ssh-add ~/.ssh/id_rsa_company

// Adds the company ssh key

Futhi le yindlela esingaphatha ngayo ama-akhawunti amaningi we-GitHub emshinini ofanayo futhi sishintshe phakathi kwawo ngenkathi sisebenza kumaphrojekthi ahambisanayo.