Kaip kūrėjai, mes paprastai turime žongliruoti aplink kelias „GitHub“ paskyras toje pačioje mašinoje. Pavyzdžiui, mes turime savo asmeninę „GitHub“ paskyrą savo projektui ir kitą „GitHub“ paskyrą, kurią naudojame kliento projektui.
Šiame straipsnyje pateikiamos nuoseklios instrukcijos, kaip nustatyti ir dirbti su keliomis „GitHub“ paskyromis tame pačiame kompiuteryje.
Pagal šį scenarijų mes sukursime dvi skirtingas „GitHub“ paskyras toje pačioje mašinoje ir tada perjungsime abi.
Pirmiausia turime sukurti savo asmeninius / viešuosius SSH raktus Asmeninis sąskaitą.
Tai galime padaryti vykdydami šią komandą terminale:
$ ssh-keygen -t rsa -C 'email@gmail.com' -f 'id_rsa_personal'
Aukščiau nurodytas el. Pašto adresas yra tas, kurį naudojate prisijungdami prie savo asmeninės „GitHub“ paskyros.
Kai būsite paprašyti nurodyti vietą, kur išsaugoti raktus, patvirtinkite numatytąją vietą paspausdami „Enter“. Privačių / viešųjų raktų pora sukuriama numatytojoje ssh vietoje ~/.ssh/
.
Mūsų asmeniniai SSH raktai yra:
~/.ssh/id_rsa_personal.pub
ir ~/.ssh/id_rsa_personal
Tada mes sukursime savo asmeninius / viešuosius SSH raktus klientas sąskaita:
$ ssh-keygen -t rsa -C 'email@company.com' -f 'id_rsa_company'
Aukščiau nurodytas el. Pašto adresas yra tas, kurį naudojate prisijungdami prie savo kliento „GitHub“ paskyros.
Pirmiau nurodyta komanda sukuria kliento SSH raktus ~/.ssh/
.
Mūsų kliento SSH raktai yra:
~/.ssh/id_rsa_company.pub
ir ~/.ssh/id_rsa_company
Prisijunkite prie asmeninės „GitHub“ paskyros ir pridėkite id_rsa_personal.pub
asmeninis viešasis raktas.
Tada prisijunkite prie savo kliento „GitHub“ paskyros ir pridėkite jus id_rsa_company.pub
kliento viešasis raktas.
Jei nežinote, kaip tai padaryti, perskaitykite įdiekite „Git“ ir sugeneruokite SSH raktus .
SSH konfigūracijos failas yra ~/.ssh/
. Jei nematote konfigūracijos failo, sukurkite jį:
$ cd ~/.ssh/ $ touch config
// Creates the file if not exists $ nano config
// Opens the file for editing
Pridėkite skirtingus „GitHub“ profilius į SSH konfigūracijos failą:
# 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
Paleiskite „ssh-agent“ paleisdami eval '$(ssh-agent -s)'
Tada pridėkite SSH raktus į ssh-agent:
ssh-add ~/.ssh/id_rsa_personal ssh-add ~/.ssh/id_rsa_company
Tai užregistruos jūsų SSH raktus kompiuteryje esančiame ssh-agent.
Dabar, kai sukūrėme asmeninius ir įmonės SSH raktus ir užregistravome juos „ssh-agent“, galime lengvai persijungti tarp dviejų „GitHub“ paskyrų tame pačiame kompiuteryje.
Turime įsitikinti, kad vienu metu ssh-agente turime tik atitinkamą SSH raktą.
Pavyzdžiui, jei dirbame su savo asmeniniu projektu, tai darome:
$ ssh-add -D
//removes all ssh entries from the ssh-agent $ ssh-add ~/.ssh/id_rsa_personal
// Adds the personal ssh key
Taip pat, jei dirbame su savo kliento projektu, darome:
$ ssh-add -D
//removes all ssh entries from the ssh-agent $ ssh-add ~/.ssh/id_rsa_company
// Adds the company ssh key
Taip mes galime valdyti kelias „GitHub“ paskyras toje pačioje mašinoje ir persijungti tarp jų dirbdami su atitinkamais projektais.