在上一篇博文中说明了如何将本地Git与Github进行关联,但在Github中一个SSH key只能添加到一个Github帐号中,否则会报key is already in use
的错误。下面来说明如何在同一电脑上进行多个Github帐号配置。
1. 生成一个新的SSH key
使用ssh-keygen -t rsa -C "xxx@xxx.com"
命令来生成新的SSH key,这里可以使用和这前一样的邮箱地址,也可以使用新的邮箱地址,重要的是不能够再一直回车,要注意在提示输入文件名称时输入一个和默认名称不一样的名称,否则会发生覆盖。
比如给文件取名叫id_rsa_newkey
,则会在当前文件夹中生成id_rsa_newkey
和id_rsa_newkey.pub
两个文件。
2.配置~/.ssh/config文件
修改~/.ssh/config文件,如果.ssh下没有这个文件可以自己创建,修改后的config文件内容如下:
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Host cocoding.github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_newkey
3.将生成的新SSH key添加到要关联的Github帐号中
将新生成的id_rsa_newkey.pub中的key添加到要关联的Github帐号中,可使用ssh -T xxx.github.com
来测试是否关联成功。这里所用的xxx.github.com就是之前config中第二个host的名称。
4.使用git clone下载代码库
要注意,在使用git clone下载代码库时,需要对地址进行修改,比如原本代码库的地址为git@github.com:x-spring/gittest.git
,在本地使用git clone时,要改为git@cocoding.github.com:x-spring/gittest.git
。
注意:此时提交代码后log中记录的用户名和邮箱信息都为全局配置的git帐号的信息,如果希望修改显示的信息,可以在项目目录中使用以下命令进行配置:
git config --local user.name "xxx" git config --local user.email "xxx@xxx.com"
交流QQ群:255489119