一台电脑使用多个git账户

思路:生成多对公私钥,并通过config配置文件区分

1、生成多对ssh公钥私钥

cd ~/.ssh/
ssh-keygen -t rsa -C "[email protected]" (xxxx用户邮箱)
注意:第一步的时候,不要一路回车,需要输入文件名称,一定要设置每个账户文件名称不同,不然会覆盖

2、将公钥添加到github网站

把生成好的ssh的公钥相对应复制到github[/gitlab]的settings中的SSH and GPG keys

3、生成config文件并配置

如果在~/.ssh/下没有config文件,可以touch config

#可缺省,此时ssh -T [email protected],默认就是和拥有id_rsa.pub的github账号对接。

#github server one
Host one.github.com        #域名地址的别名

Hostname github.com        #这个是真实的域名地址

User git                   #配置使用用户名

IdentityFile ~/.ssh/id_rsa  #这里是id_rsa的地址

#github server two

Host two.github.com

Hostname github.com

User git

IdentityFile ~/.ssh/id_rsa_two

##如果有第三个或者更多
#gitab server

Host gitlab

Hostname gitlab.com

User git

IdentityFile ~/.ssh/id_rsa_gitlab
4、测试是否成功

ssh -T [email protected]

5、取消全局配置,使用局部配置

因为一台电脑上配置了多个git账号,所以就不能再配置全局的用户名和邮箱了,而是在不同的仓库下,如果需要连接不同的git账号,配置相应的局部用户名和邮箱即可,如果之前配置过全局的用户名和邮箱,需要取消配置

git config --global --unset user.name
git config --global --unset user.email

在每个项目目录下单独配置:
git init
git config user.name "Your name"
git config user.email [email protected]

6、Clone 项目到本地

在工作目录下,首先先git init,然后才能使用git命令clone项目到本地

#之前的方式:单个账号
git clone [email protected]:firstAccount/xxx.git #缺省config配置时

git clone git@github:firstAccount/xxx.git #config配置后,等价于第一条语句

#现在要改为,git clone git@域名别称:项目名
git clone [email protected]:secondAccount/xxx.git //就是使用域名地址的别名来区分

git clone [email protected]:gitlabAccount/xxx.git

参考文章:
https://www.cnblogs.com/fanbi/p/7825746.html
https://blog.csdn.net/mq2856992713/article/details/62090841

你可能感兴趣的:(一台电脑使用多个git账户)