Како да управувате со повеќе сметки на GitHub на иста машина

Како програмери, вообичаено треба да жонглираме со повеќе сметки на GitHub на иста машина. На пример, имаме своја лична сметка на GitHub за сопствен проект, а потоа друга сметка на GitHub што ја користиме за нашиот проект за клиенти.

Оваа статија дава чекор по чекор инструкции за тоа како да поставите и да работите со повеќе сметки на GitHub на истата машина.



Управувајте со повеќе сметки на GitHub

Во ова сценарио ќе создадеме две различни сметки на GitHub на иста машина и потоа ќе се префрлиме помеѓу нив.


Генерирајте SSH-клучеви

Прво, треба да ги создадеме нашите приватни / јавни SSH клучеви за нашите лично сметка.

Можеме да го направиме ова со извршување на следнава команда во терминал:


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

Горенаведената адреса за е-пошта е онаа што ја користите за најавување на вашата лична сметка на GitHub.

Кога ќе ја побарате локацијата за да ги зачувате копчињата, прифатете ја зададената локација со притискање на enter. Создаден е пар / приватен / јавен клуч во зададената локација за ssh ~/.ssh/.

Нашите лични SSH-клучеви се:

~/.ssh/id_rsa_personal.pub и ~/.ssh/id_rsa_personal


Следно, ние создаваме приватни / јавни SSH клучеви за нашите клиент сметка:

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

Горенаведената адреса за е-пошта е онаа што ја користите за најавување на сметката на вашиот клиент GitHub.

Горенаведената команда ги создава SSH клучевите на нашите клиенти кои се лоцираат во ~/.ssh/.

Нашите клиенти SSH клучеви се:


~/.ssh/id_rsa_company.pub и ~/.ssh/id_rsa_company

Додадете SSH-клучеви на соодветните сметки на GitHub

Најавете се на вашата лична сметка на GitHub и додадете ги id_rsa_personal.pub личен јавен клуч.

Следно, најавете се на сметката на вашиот клиент GitHub и додајте ве id_rsa_company.pub клиент јавен клуч.

Ако не сте сигурни како да го направите ова, тогаш прочитајте инсталирајте ги Git и генерирајте SSH-клучеви .


Ажурирајте ја SSH конфигурацијата Датотека

Конфигурационата датотека SSH се наоѓа во ~/.ssh/. Ако не ја видите конфигурациската датотека, тогаш креирајте една:

$ cd ~/.ssh/ $ touch config

// Creates the file if not exists $ nano config

// Opens the file for editing

Додадете ги вашите различни профили на GitHub во конфигурациската датотека 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

Регистрирајте ги SSH-клучевите со ssh-агент

Започнете го вашиот ssh-агент со извршување eval '$(ssh-agent -s)'.

Потоа додадете ги вашите SSH-клучеви во агентот ssh:


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

Ова ќе ги регистрира вашите SSH-клучеви со агенсот ssh на машината.

Само еден активен SSH-клуч во ssh-агент истовремено

Сега, кога ги создадовме нашите SSH клучеви за лични и компании и ги регистриравме кај ssh-агентот, сега можеме лесно да се префрлиме помеѓу двете сметки на GitHub на истата машина.

Треба да се осигураме дека во ssh-агентот истовремено го додаваме само соодветниот клуч SSH.

На пример, ако работиме на наш личен проект, тоа го правиме:

$ ssh-add -D

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

Исто така, ако работиме на нашиот проект за клиенти, правиме:

$ ssh-add -D

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

// Adds the company ssh key

И ова е како можеме да управуваме со повеќе сметки на GitHub на иста машина и да се префрламе помеѓу нив додека работиме на соодветни проекти.