Windows10配置多个git账号
与许多程序员一样,公司使用gitlab进行代码管理。私下,在gitee有账号学习,闲着没事可能也捣鼓一下github。这就有必要对本机进行多个git账号的配置,期间参考了很多网上资料,踩了不少坑,在此做下记录。
该笔记默认读者已经安装配置过git,并且idea中已经继承了git,对于git的安装使用及idea集成git不做赘述!
1.删除GIT全局配置
查看是否进行过全局配置
git config --global --list
如果配置过,会出现
$ git config --global user.name "你的名字"
$ git config --global user.email "你的邮箱"
将其删除
$ git config --global --unset user.name "你的名字"
$ git config --global --unset user.email "你的邮箱"
2.生成新的SSH keys
.ssh/目录(C:\Users\自己的用户名.ssh)下,右键Git Bash Here,打开git-bash窗口
ssh-keygen -t rsa -C "自己git账号的邮箱"
如果只是配置一个,直接三次回车即可生成。因为要配置连个账号,所以指定生成文件,做一下区分。
进入指定生成key的目录,发现文件已生成
3.将公钥配置到码云
将对应的id_rsa_lxldh.pub文件用EditPlus工具打开,将内容(公钥)全部复制配置到到gitee中
重复2、3步骤生成并配置第二个账号的SSH 公钥。
4.创建config文件
注意1:没有后缀,可以先创建config.txt,编辑完之后把后缀删掉
注意2:最好用EditPlus等编辑工具打开,避免出编码问题
注意3:尽量手敲,如果直接复制,注意删除一下前后空格,自己缩进一下。我因为直接复制网上的文档,出了问题捣鼓了一下午。这里特别感谢一下,Gittee官方群的“青春永不落”的帮忙。
文件内容如下:
Host 任意主机别名1
HostName gitee.com
IdentityFile ~/.ssh/自己的ssh key的文件1
PreferredAuthentications publickey
User gitee用户名1
Host 任意主机别名1
HostName gitee.com
IdentityFile ~/.ssh/自己的ssh key的文件2
PreferredAuthentications publickey
User gitee用户名1
配置文件参数说明
# Host : 每个Host要取一个别名,每个Host主要配置HostName和IdentityFile即可
# HostName : 要登录主机的主机名
# User : 登录名
# IdentityFile : 指明上面User对应的identityFile路径
5.测试SSH key是否生效
依次验证
ssh -T git@自己配置的第一个Host
出现gitee用户名即说明成功
重复5的操作,完成另一个账号的验证。
6.下载代码
1. git clone 直接下载
直接git clone 项目ssh地址,但是需要将gitee.com替换成Host的内容
2.SSH-agent(不推荐)
这种方式,需要将SSH key 添加到ssh-agent。最坑的是,每次重新打开git-bash,都需要重新将SSH key添加到SSH-agent。所以,不太推荐这种做法。
查看ssh-agent是否处于开状态,打印pid说明开启
eval "$(ssh-agent -s)"
依次执行命令,将两个账号添加到ssh-agent
ssh-add ~/.ssh/id_rsa_写自己的
如果配置过了的话,路径不需要替换了,直接是gitee上项目的SSH路径
7.idea中使用
随便写点东西,commit一下,出现如下提示框。
瞎写容易被人问候全家,就是人家对代码有疑问,想找作者聊聊的时候,直接在idea看不了。我们公司新来的小孩,一堆花里胡哨的名字。每次看见代码有问题,都得跑web管理界面查提交记录。
如果真的不小心写错了,及时修改下。以下是删除,之后再commit代码,会让重新设置。
其他操作user.name,user.email的命令参考(注意:把–global去掉,不然就是该全局的了):
点我