前言
一般情况下,我们都是一台电脑配置一个Git账号,使用如下命令:
git config --global user.name "your name"
git config --global user.email "your email"
我的电脑上已经配置GitHub的,现需要配置公司的 GitLab 账号(或者其他类型的 Git 账号)。
配置多个git账号
清除原有全局设置
该步骤非必须的,如果你没有设置过全局用户名、email 等信息,则不用清除原有设置
- 取消全局设置
git config --global --unset user.name
git config --global --unset user.email
生成ssh密钥
- 生成github 对应账号的ssh密钥
ssh-keygen -t rsa -C "your_github_email@xxx.com"
- 执行完上面的命令后,命令行会弹出以下提示
Enter file in which to save the key (/c/Users/admin/.ssh/id_rsa):
- 在此处修改id_rsa文件名(注意:不要覆盖之前的rsa密钥)
/c/Users/admin/.ssh/id_rsa_test
- 之后就一直回车即可
- 文件夹ssh下就生成了 id_rsa_test 和id_rsa_test.pub
- 最后将id_rsa_test.pub里的内容粘贴到github服务器的指定位置上
以上只是一个账号ssh的生成过程,其他账号同上
修改config文件(如果没有就在.ssh 文件夹下创建一个)
# The git info for githunb
Host test #服务器别名
HostName github.com #主机地址
User git #可以写邮箱名称,也可以写 git 账号
IdentityFile C:\\Users\\admin\\.ssh\\id_rsa_test #对应github 密钥路径,注意不要写错
IdentitiesOnly yes #配置yes,表示只使用这里的key,防止使用默认的(可忽略)
PreferredAuthentications publickey #强制验证方式,这里使用的是publickey
# The git info for company
Host company #服务器别名
HostName gitLab.com #公司gitLab 地址
User git #可以写邮箱名称,也可以写 git 账号
IdentityFile C:\\Users\\admin\\.ssh\\id_rsa_company #对应公司 gitLab 账号密钥路径,注意不要写错
IdentitiesOnly yes
PreferredAuthentications publickey
测试
- 可以利用ssh -T git@test,测试github账号是否成功。
- 这样就配置完成了
使用
- git clone
git clone git@test:worker/test.git
- 通过config ,指定不同的 git 账号对应不同的 ssh key
#全局设置账号
git config --global user.name "your name"
git config --global user.email "your email"
#在项目中设置账号--->需先进入到clone下的项目文件下
git config --local user.name "your name"
git config --local user.email "your email"