内容简介:通常我们有使用 Github、Gitlab,当 Github 或 Gitlab 下有多个账号,你会发现你的 ssh key 不够用了,因为站点会给你个提示:ssh key already in use github这个时候我们可以采用如下做法
背景
通常我们有使用 Github、Gitlab,当 Github 或 Gitlab 下有多个账号,你会发现你的 ssh key 不够用了,因为站点会给你个提示:
ssh key already in use github
这个时候我们可以采用如下做法
- 生成多个公钥/私钥对
- 对不同的域名配置不同的私钥
实操
- 生成多个公钥/私钥对
ssh-keygen -t rsa -C "你的邮箱"
用不同的邮箱创建不同的公钥/私钥对
- 添加私钥
ssh-add '私钥路径'
ssh-add 提示并将用户的使用的私钥添加到由ssh-agent 维护的列表中. 此后, 当使用公钥连接到远程 SSH 或 SCP 主机时,不再提示相关信息
- 创建配置文件
在 .ssh 目录创建 config 文件,配置如下内容
# gitlab Host git.iboxpay.com HostName git.iboxpay.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa # github Host github2.com HostName github.com PreferredAuthentications publickey IdentityFile ~/.ssh/feygh # github Host github.com HostName github.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa
这个配置文件中 Gitlab 下的 ssh 通信都走 id_rsa 公钥加密,所以你在 Gitlab 仓库中要复制 id_rsa 这个公钥过去;
值得注意的是,这里有两个 Github 配置,仔细观察下 HostName 都是 github.com,但是 Host 不一样,这就是关键之处。
大家回忆下我们是怎么 clone Github 的?
git@github.com:username/projectname.git
分析这个地址 git@github.com 告诉 ssh 要登录的主机,username 和 projectname 看字面意思就理解,不赘述。
在这个配置文件中 Host 就是和 github.com 这个对应,HostName 是真实的物理连接 Host。
如果大家这么 clone Github:
git@github2.com:username/projectname.git
那么进行这个 ssh 连接的时候,会命中 ssh config 中 Host 为 github2.com 的配置,反过来亦然。也就说你在 clone Github 另一个项目的时候要手动修改下地址为上述地址即可。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 如何在本地管理和切换多个 github 账号?
- 同一客户端下使用多个 Git 账号
- 在一台Mac上不同平台同时使用多个Git账号
- 广东摧毁多个黑客团伙:盗论文查重账号 售查重结论
- 组合漏洞导致的账号劫持
- 云原生账号安全管理
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
PHP Web 2.0开发实战
泽瓦斯 / 苏金国 / 人民邮电出版社 / 2008-10-1 / 59.00元
本书通过一个完整的Web 2.0应用——带有动态图库、搜索和地图功能的博客系统详细介绍了Web开发的全过程。首先讨论了Web应用的规划与设计,然后逐章实现各个具体特性,包括网站主页、用户主页、用户注册页面、账户登录和管理页面、用户博客系统、网站搜索以及应用管理等,最后介绍部署和维护。 本书适合中、高级的PHP程序员阅读。一起来看看 《PHP Web 2.0开发实战》 这本书的介绍吧!
图片转BASE64编码
在线图片转Base64编码工具
SHA 加密
SHA 加密工具