gitlab add an ssh key 多个ssh配置

前言

当你的git需要访问不放环境的时候,你看需要配置多个ssh配置

配置多个 Git 账号可以通过在 ~/.ssh 目录下创建不同的 SSH 密钥文件和配置文件来实现。

生成不同的ssh秘钥

创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,Git Bash,创建SSH Key

在命令行中(Open Git Bash here)执行以下命令来生成不同的 SSH 密钥(可以不设置密码,不让每次访问都要输入密码):

复制代码
ssh-keygen -t rsa -C "your_email@example.com" -f ~/.ssh/id_rsa_first_account

ssh-keygen -t rsa -C "your_email@example.com" -f ~/.ssh/id_rsa_second_account

其中,id_rsa_first_account 和 id_rsa_second_account 分别是第一个和第二个账号的密钥文件名称。

在 GitLab 或者 GitHub 上添加公钥

在 ~/.ssh 目录下创建 config 文件

复制代码
# First account
Host gitlab.com-first-account  最好也是网址 不然git命令用不能用
  HostName gitlab.com 网址
  User git
  IdentityFile ~/.ssh/id_rsa_first_account

# Second account
Host gitlab.com-second-account 最好也是网址 不然git命令用不能用
  HostName gitlab.com 网址
  User git
  IdentityFile ~/.ssh/id_rsa_second_account

其中,Host 字段需要根据自己的 GitLab 或者 GitHub 地址进行修改。IdentityFile 字段需要指向之前生成的不同密钥文件的路径。

Host的名字可以取为自己喜欢的名字,不过这个会影响git相关命令,例如:Host mygithub 这样定义的话,命令如下,即git@后面紧跟的名字改为mygithub,例如:git clone git@mygithub:xxx/****.git

HostName要是git的网址

Clone 代码仓库

在克隆代码仓库时,通过指定不同的 Host 来使用不同的账号进行克隆。例如:

git clone git@gitlab.com-first-account:username/project.git

或者

git clone git@gitlab.com-second-account:username/project.git

这样就可以使用不同的账号克隆不同的代码仓库了。

总结

代码能够正常下载下来,则配置完成

相关推荐
闪亮的路灯27 分钟前
Linux 安装mqtt服务mosquitto
linux·运维·服务器
szxinmai主板定制专家3 小时前
X86 工控机 vs RK3588 异构主控:AMR 控制器 BOM、散热、长期运维对比
运维·stm32·单片机·嵌入式硬件·fpga开发·am62x
叼烟扛炮4 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
Decay__4 小时前
09_MySQL 闪回与时间点恢复 —— binlog 回放、mysqlbinlog、PITR 与误删恢复
运维·数据库·sql·mysql·架构
久曲健的测试窝4 小时前
2026软件测试工具选型指南:双模式如何化解UI脚本维护难题
运维·人工智能·科技·aigc
NailiConveyor6 小时前
柔性物流方案如何适配工厂升级?自动化输送流水线定制要点
大数据·运维·自动化·制造·业界资讯
Lsetea6 小时前
Certbot webroot申请SSL证书总是404:Nginx挑战目录与路径映射检查
运维·nginx·https·ssl证书·certbot
如若1236 小时前
Windows SSH + Headscale/Tailscale 组网及免密登录完整配置教程
运维·windows·ubuntu·ssh·内网穿透
开开心心就好6 小时前
音频降噪剪辑工具,音量裁剪一键处理
运维·服务器·前端·spring·ocr·音视频·1024程序员节
lwx9148526 小时前
Docker-安装SSH服务
docker·容器·ssh