Windows下配置多个Git节点账号并免密登录
1、正常绑定单个Git的流程
在git bash执行ssh-keygen -t rsa -C "username@email.com"
命令生成username的ssh key
- 当前用户下的.ssh目录下会生成
id_rsa
【私钥文件】、id_rda.pub
【公钥文件】。 - 将
id_rda.pub
【公钥文件】`的内容添加到username的github中。 - 在git bash终端中输入
ssh -T git@github.com
验证测试该username用户的ssh秘钥是否生效。
连接成功返回提示信息:Hi username! You've successfully authenticated, but GitHub does not provide shell access.
2、绑定多个Git账号
-
生成并添加
user1
的ssh key# 在git bash终端输入执行命令 cd ~/.ssh ssh ssh-keygen -t rsa -f ~/.ssh/id_rsa_user1 -C "user1@email" #一路回车即可
-
将user1公钥添加至Github
-
验证user1是否可以通过验证
ssh -T git@github.com -i ~/.ssh/id_rsa_user1
同理,添加use2 Git 账号也是一样的操作
-
生成并添加
user2
的ssh key# 在git bash终端输入执行命令 cd ~/.ssh ssh ssh-keygen -t rsa -f ~/.ssh/id_rsa_user2 -C "user2@email" #一路回车即可
-
将user2公钥添加至Github
-
验证user2是否可以通过验证
ssh -T git@github.com -i ~/.ssh/id_rsa_user2
3、配置config文件
cd ~/.ssh
在.ssh目录下创建或修改config文本文件,为每个账号配置一个Host节点。主要配置项说明:
# Host 别名
# HostName 主机名
# Port 端口
# User 用户名
# IdentityFile 密钥文件的路径
# IdentitiesOnly 只接受SSH Key 登录
# PreferredAuthentications publickey 强制使用Public Key验证
内容如下:
# user1
Host github.com
HostName github.com
User user1
PreferredAuthentications publickey
IdentityFile C:\Users\python\.ssh\id_rsa_user1
# user2
Host github.com
HostName github.com
User user2
PreferredAuthentications publickey
IdentityFile C:\Users\python\.ssh\id_rsa_user2
注意:如果你的项目按照以前的方式只是配置了一个git账号,并且没有配置多个Git账号,提交代码时候会报错,ssh认证连接失败。当你配置好多Git账号后,只需要重新拉取下git代码即可。简单粗暴