git管理多个密匙,向多个github账号推库,最终简版windows
git多密匙 windows 向多账号push
查了很多资料终于完成了配置
步骤一
ssh-****** -t rsa 生成多组**对(本文生成两组):
将两组**对放入c盘windows用户下的.ssh目录下(可手动移也可用命令),下文用到该路径时输 ~/.ssh/ 即可,程序会自动解析 ~/ 路径
步骤二
将公钥(.pub结尾的为公钥)中的内容复制到你要push的服务器账号下,以github为例
settings >> ssh and GPG keys >> new ssh key 新建粘贴即可
步骤三
在.ssh目录下生成文件名为config的配置文件,用于管理多个**对
Host 别名,(后面匹配时会用到)
HostName 真实的域名或rul,(就是你要关联的账号所在地)
IdentityFile 私钥的存放路径,(绑定host,hostname与**之间的关系,少了这个系统就不知道该用哪个私钥)
PreferredAuthentications publickey 照抄即可,也可不写,有默认
User 本地用户名(可不同)
步骤四
将多个**添加给ssh-agent代理管理,
ssh-agent bash 开启代理
ssh-add ~/.ssh/id_rsa_lurenwuhui 添加密匙 (每个密匙都要添加)
步骤五
指定各个远程账户与多密匙之间的联系并设置remote连接别名方便调用
git remote add origin [email protected]:lurenwuhui/0830git.git 设置
git remote set-url origin [email protected]:lurenwuhui/0830git.git 重新设置别名对应的内容t
图中的@后的host别名要填对,多个密匙不能填github.com,这是区别私钥对应哪个远程账户的关键
图中因为别名已存在所以报错了,可用set-url代替add重新设置
git remote -v可查看已添加的remote连接别名
步骤六
五步配置完成就建立好连接了,已经可以愉快地进行push等操作了
这里我文件没更新,所以它提示我已是最新版。
个人认为比较有用的参考资料:https://debugtalk.com/post/head-first-git-authority-verification/