How to configure multiple github accounts on your computer?

ぐ巨炮叔叔 提交于 2020-03-21 06:34:06

问题


So, I have my work computer and that is connected to my GitHub Enterprise Account (github.company.com) on the terminal. Now I want to set up my personal account (github.com) on here too.

I've been following this tutorial - https://code.tutsplus.com/tutorials/quick-tip-how-to-work-with-github-and-multiple-accounts--net-22574 and on step 3 when I have to create my config file should my HostName be github.company.com or github.com? Can I have any (meaningful) name for Host? Also, what does User here mean?

Also, how do I switch between both these accounts on the terminal - i.e. my personal and my enterprise account? There are certain things I need to commit from my personal account, and use the enterprise account with the rest.


回答1:


Detailed steps to use two GitHub accounts on the same PC as below:

1. Create SSH key for the github.company.com account

If you already added the SSH key to your github.company.com account, then skip this step.

First, use ssh-keygen to create id_rsa and id_rsa.pub in C:\Users\username\.ssh.

Then, add the content of id_rsa.pub file as a SSH key in github.company.com account.

2. Create SSH Key for your personal account github.com

Use ssh-keygen -t rsa -C "email address for the personal github account", and save the key in /c/Users/username/.ssh/id_rsa_personal.

Now add the content of id_rsa_personal.pub file as a SSH Key in your personal GitHub account.

3. Config the two SSH Keys

In C:\Users\username\.ssh diectory, create a config file with below content:

Host github.company.com
  HostName github.company.com
  User git
  IdentityFile ~/.ssh/id_rsa
Host github-personal
  HostName github.com
  User git
  IdentityFile ~/.ssh/id_rsa_personal

4. Work with the two GitHub accounts by SSH protocol

You can clone your github.company.com account by:

git clone git@github.company.com:companyaccountname/reponame

And then add the personal account as a remote in the local repo by:

git remote add personal git@github-personal:personalaccountname/reponame

To get the file from personal account to company repo by below commands:

git merge upstream master --allow-unrelated-histories
# make changes
git add .
git commit -m 'add the changes from peronal repo'
git push origin master

To commit/push changes from local company repo by the committer of the personal repo, you just need to re-config the username and email before committing changes in the local repo:

git config user.name <personal github account username>
git config user.email <email for login the personal github account>

When you want to commit changes with the company account, just re-config username and email again before committing changes.



来源:https://stackoverflow.com/questions/49545633/how-to-configure-multiple-github-accounts-on-your-computer

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!