同时关联多个git远程仓库


查看已有ssh key

首先确保能够查看隐藏目录,进入C:\Users\XXXXX.ssh目录,查看是否生成过密钥。

id_rsa.pub和id_rsa分别为一对公/私密钥

多个账户可再次创建密钥,但默认的名字需要修改,不能相同,否则会被提示是否重写

默认为id_rsa,因此第二个密钥我修改了名字为id_rsa_lbx

生成ssh key

ssh-keygen -t rsa -C youremail@yourcompany.com

蓝色加粗字体为你的邮箱,不同ssh key需要绑定不同邮箱

如果已经生成多个ssh key,如上图,则跳过此步

设置ssh key的代理

首先查看代理

ssh-add -l

如果提示

Could not open a connection to your authentication agent.

则系统代理里没有任何key,执行如下操作

exec ssh-agent bash

若系统已经有ssh-key 代理 ,可以删除

ssh-add -D

添加私钥

添加两个私钥

ssh-add ~/.ssh/id_rsa
ssh-add ~/.ssh/id_rsa_lbx

添加公钥

在目标账户githubssh管理页面,添加对应的公钥(刚才生成的ssh key,如id_rsa.pub 等以.pub结尾的文件内容)。

新建并编辑配置文件config

在 ~/.ssh 目录下新建一个config文件

touch ~/.ssh/config

添加内容

方法一

#github

Host github.com

HostName github.com

PreferredAuthentications publickey

IdentityFile ~/.ssh/ id_rsa

user git

其中,id_rsa 为你要关联的账户对应的密钥,电脑需要关联哪个账户,这边就写哪个

如此,ssh就会根据登陆的不同域,来读取对应的私钥文件

如需要用到其他账户的远程仓库,则在此处修改目标仓库生成的ssh key即可。

方法二

同时将两个ssh key同时写入,但区分Host名称即可,并且对应的ssh key文件对应好。

并且以后在github.com前面加上前缀(Host名称),就可以跳转到各个账号的仓库。

测试

ssh -T git@github.com

若出现

Hi XXX! You’ve successfully authenticated, but GitHub does not provide shell access.

则表示成功。查看XXX是否为关联的账户

可以查看分支,看看对应的仓库地址:

选择仓库

拉:

git pull lbx-AIO main

解决冲突:

idea处理即可

提交:

git add .
git commit -m ‘XXX’

推:

git push lbx-AIO main


文章作者: Luan-bx
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Luan-bx !
  目录