首页 > 在一台电脑上使用两个github账号

在一台电脑上使用两个github账号

问题描述:

 

我公司有一个github账号,每天工作把代码传上去,我觉得代码写的好,我同时想上传到自己的github账号上面去,但是目前只有一台电脑,如何在一台电脑上面进行设置,使这一台电脑可以同时上传两个不同的github账号呢

 

 

解决方案:

 

1.      生成新的ssh-key

我们默认在此之前大家已经可以通过这台电脑上传代码到一个github账号上面去,假设我之前注册github账号是[email protected],  大家已经可以上传代码了,现在我申请了一个新的账号[email protected]

首先生成新的ssh-key:在gitbash下,输入命令:ssh-keygen –t rsa –C “[email protected]

然后会提示你输入一个名字,因为你是在一台电脑上第二次生成公钥,一般第一次默认的名字是id_rsa,但是如果这次你还是这个名字的话就会把之前的覆盖掉,意思就是说,原本电脑里面已经存在的id_rsa,是[email protected] 的,所以你这次输入一个新的名字 比如id_rsa_cat,这时候就会自动生成生成两个文件id_rsa_cat和id_rsa_cat.pub

然后系统会提示你输入密码,然后回车就成功了。上面操作如下图所示



2.      添加ssh-agent(每次重启之后都需要这句)

首先找到刚刚生成的两个文件,注意看我上面的目录,



所以我刚刚生成的两个文件在我电脑的W盘下的GitFile/C-Practice下,把生成的id_rsa_cat和id_rsa_cat.pub拷贝到C盘的用户(或者叫User)的.ssh文件下

如下图



上图里面配置了好几个github,大家可以忽略,只看id_rsa_cat和id_rsa_cat.pub就好,还有就是注意我的文件夹。上面的这些操作直接在Windows下操作就好,不需要是gitbash。接下来打开gitbash,进入到~目录下,然后使用下面的命令来添加,ssh-add ~/.ssh/id_rsa_cat

但是如果出现如下的错误,就说明没有给本地添加一个agent



接下来使用下面的命令,创建一个新的agent:eval `ssh-agent -s`,然后再进行下面的操作就好了

3.      添加ssh key到github下

即把生成的公钥(id_rsa_cat.pub),添加到github账号下,这里不再细述,看下图大家应该就知道啥意思了

 

4.      配置多个ssh-key

在gitbash的~目录下,输入下面命令:vim ~/.ssh/config

大家通过比较下图的不同之处,根据自己的设置,把config的内容进行修改,这里也不再细述

 

5.      使用cat进行clone代码

比如我在github账号[email protected] 下创建了一个仓库,命名为practice,首先clone仓库,使用命令:git clonegit@cat:cat/practice.git  其中第一个cat是你在配置config的时候那个Host后面对应的名字,而第二个cat是你的github账号上面的那个名称

比如上图中我还配置了一个Moca的账号,而它在github上面的账号是baixu1217.com,那么我此时clone的时候使用的命令是git clone git@Moca:baixu1217/practice.git

6.  为每个账号对应的项目配置email和name

如果本机已经配置所有可用的email和name,就把原本已经配置好的取消掉,输入命令:

git config –global–unset user.name

git config –global–unset user.email

 

然后每次clone一个仓库后都要配置相应的user.name和user.email

首先进入到你刚刚clone的仓库目录下,然后输入下面命令

git configuser.name “cat”    这里面的cat是你上图中配置的那个User后面的名字保持一致。然后输入命令:

git configuser.email “[email protected]”    这里的email就是你注册github的账号

7.  上传代码

这部分相信有基础的同学一定会使用的,就是和平时使用git add ,git commit –m和git push origin master一样了,大家可以试试吧