Git同时使用多个 ssh key

本文介绍如何在Git中配置和使用多个SSH密钥,以应对不同Git服务器的需求。通过指定不同的id_rsa文件名,可以在同一台计算机上管理多个远程Git仓库。

Git同时使用多个 ssh key

解决本地多个ssh key问题

对于使用多个不同的git服务器的情况,按照常规方式,每次生成ssh key时会都覆盖上一次生成的id_rsa文件,所以为了不覆盖,采用指定id_rsa文件名的方式。

1. 第一步依然是配置git用户名和邮箱

git config user.name "username"

git config user.email "email"

2. 生成ssh key时同时指定保存的文件名

ssh-keygen -t rsa -f ~/.ssh/id_rsa.osc -C "your email"

上面的id_rsa.osc就是我们指定的文件名,这时~/.ssh目录下会多出id_rsa.osc和id_rsa.osc.pub两个文件,id_rsa.osc.pub里保存的就是我们要使用的key。

3. 新增并配置config文件

添加config文件

如果config文件不存在,先添加;存在则直接修改

touch ~/.ssh/config

在config文件里添加如下内容(User表示你的用户名),以下为一组

HOST *gitee.com
IdentityFile ~/.ssh/id_rsa.osc

User test #此配置可以省略

4. 上传key到云平台后台(参考码云)

5. 测试ssh key是否配置成功

ssh -T git@gitee.com

成功的话会显示:

Welcome to Gitee.com, JR!

至此,本地便成功配置多个ssh key。日后如需添加,则安装上述配置生成key,并修改config文件即可。

设置SSH使用HTTPS的403端口(未遇到,未验证)

在局域网中SSH的22端口可能会被防火墙屏蔽,可以设置SSH使用HTTPS的403端口。

测试HTTPS端口是否可用

ssh -T -p 443 git@gitee.com
编辑SSH配置文件 ~/.ssh/config 如下:

1
2
3

Host github.com
Hostname ssh.gitee.com
Port 443


测试是否配置成功

1
2
3

$ ssh -T git@github.com
Hi username! You've successfully authenticated, but GitHub does not
provide shell access.

 

转载于:https://my.oschina.net/hewenbin/blog/1548842

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值