配置多个git账号
背景
- 平常工作中,我们一般设置一个全局账号就够了
- 然而,有时候你除了工作的git账号(往公司自己搭建的git私服上提代码);还会往自己的github账号上提代码
- So,需要再一台PC上配置多个git账号
开始配置多个git账号
账号 | git服务器 |
---|
账号1 | git@github.com |
账号2 | git私服 |
第一步:移除git全局配置
- 右键点击Git Bash Here,打开Git命令行
- 输入命令
#查看全局配置 主要看user.name user.email user.password
git config --list
#移除全局配置账户
git config --global --unset user.name
#查看全局用户名 已经显示为空了,说明移除成功
git config --global user.name
# 移除全局配置邮箱
git config --global --unset user.email
# 再查看全局邮箱 已经显示为空了,说明移除成功
git config --global user.email
# 移除全局密码
git config --global --unset user.password
# 查看全局密码 已经显示为空了,说明移除成功
git config --global user.password
第二步:生成账号1的ssh key并添加到github的setting处
- 右键点击Git Bash Here,打开Git命令行
- 生成账户1的ssh key
ssh-keygen -t rsa -f ~/.ssh/id_rsa_github -C "yourAccount1@email.com"
- 进入.ssh目录下,查看是否生成id_rsa_github私钥文件和id_rsa_github.pub公钥文件
- 将id_rsa_github.pub公钥文件的ssh key拷贝出来添加的账号1所在的github的seeting处
- 测试连接成功与否,出现success…就说明连上了
ssh -T git@github.com -i ~/.ssh/id_rsa_github
第三步:生成账号2的ssh key并添加到git私服的setting处
- 右键点击Git Bash Here,打开Git命令行
- 生成账户2的ssh key
ssh-keygen -t rsa -f ~/.ssh/id_rsa_gitlab -C "yourAccount2@email.com"
- 进入.ssh目录下,查看是否生成id_rsa_gitlab私钥文件和id_rsa_gitlab.pub公钥文件
- 将id_rsa_gitlab.pub公钥文件的ssh key拷贝出来添加的账号2所在的git私服的seeting处
- 测试连接成功与否,出现success…就说明连上了
ssh -T git私服址 -i ~/.ssh/id_rsa_gitlab
第四步 在/.ssh目录下配置config文件
- 配置说明
配置项 | 说明 |
---|
HOST | 主机别名 |
hostname | 服务器真实地址 |
port | 端口 |
User | 用户名 |
IdentityFile | 私钥文件路径 |
PreferredAuthentications | 认证方式(公钥的方式) |
# 账号1-github
HOST github.com
hostname ssh.github.com
port 443
User user1
IdentityFile C:\\Users\\yang\\.ssh\\id_rsa_github
PreferredAuthentications publickey
# 账号2-公司的git私服
HOST git私服的地址
hostname git私服的地址
port git私服的地址的端口
User user2
IdentityFile C:\\Users\\yang\\.ssh\\id_rsa_gitlab
PreferredAuthentications publickey
- 测试ssh key是否生效,出现success即表示成功
ssh -T git@user1.github.com
ssh -T 公司的git私服地址
第五步 为每个仓库配置用户名和邮箱(很重要)
- 为每个仓库配置单独的用户名和邮箱
git config user.name "user1"
git config user.email "user1@email.com"