Kaip tvarkyti kelias „GitHub“ paskyras toje pačioje mašinoje

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.



Tvarkykite kelias „GitHub“ paskyras

Pagal šį scenarijų mes sukursime dvi skirtingas „GitHub“ paskyras toje pačioje mašinoje ir tada perjungsime abi.


Generuoti SSH raktus

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

Pridėkite SSH raktus prie atitinkamų „GitHub“ paskyrų

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 .


Atnaujinkite SSH konfigūracijos failą

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

Užregistruokite SSH raktus pas ssh-agent

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.

Vienu metu ssh-agente gali būti tik vienas aktyvus SSH raktas

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.