当前位置: 首页 > news >正文

github多个账号配置多个SSH秘钥

背景

对于有多个github账号的同学,需要配置多个ssh秘钥分别管理多个账号。


方法

1、生成多个SSH秘钥

# 为第一个 GitHub 账号生成密钥
ssh-keygen -t ed25519 -C "your_email_1@example.com" -f ~/.ssh/id_ed25519_github_work# 为第二个 GitHub 账号生成密钥
ssh-keygen -t ed25519 -C "your_email_2@example.com" -f ~/.ssh/id_ed25519_github_personal

-C 是邮箱地址的注释,-f 指定密钥文件保存的位置。

2、将公钥添加到对应的 GitHub 账号

生成 SSH 密钥后,你需要将公钥添加到各自的 GitHub 账户中。

  • 运行以下命令复制 SSH 公钥:
复制代码
cat ~/.ssh/id_ed25519_github_work.pub
  • 复制密钥内容后,打开 GitHub 账户,进入 Settings > SSH and GPG keys,点击 New SSH Key,将密钥添加进去。
  • 同样地,重复步骤为第二个 GitHub 账号添加对应的公钥。

3、配置 SSH

在 ~/.ssh/config 文件中配置 SSH,使其知道每个仓库应该使用哪个密钥。

# 第一个 GitHub 账号配置 (工作账号)
Host github-workHostName github.comUser gitIdentityFile ~/.ssh/id_ed25519_github_work# 第二个 GitHub 账号配置 (个人账号)
Host github-personalHostName github.comUser gitIdentityFile ~/.ssh/id_ed25519_github_personalPort 22  # 如果使用的是默认端口22,可以省略这一行

4、克隆仓库时使用不同的 Host

# 对于第一个 GitHub 账号(工作账号),你应该使用如下的命令来克隆仓库:git clone git@github-work:username/repository.git# 对于第二个 GitHub 账号(个人账号),则使用:git clone git@github-personal:username/repository.git

5、配置现有仓库使用特定的 SSH Key

如果你已经克隆了某个仓库,并且想为其指定使用特定的 SSH Key,可以使用以下命令更改仓库的远程 URL:

# 工作账号仓库
git remote set-url origin git@github-work:username/repository.git# 个人账号仓库
git remote set-url origin git@github-personal:username/repository.git

直接使用config访问服务器

直接使用 ssh + [config文件Host名称] 即可

ssh github-work

总结

通过生成多个 SSH 密钥、配置 SSH 文件和使用不同的 Host 名称,你可以在同一台机器上无缝地管理多个 GitHub 账号。

http://www.lryc.cn/news/468749.html

相关文章:

  • 静态/动态代理详解,一次性看完再也不会搞不清!
  • Webserver(2)GCC
  • mac电脑设置chrome浏览器语言切换为日语英语等不生效问题
  • Python中的人工智能框架与实例
  • 论文阅读(二十六):Dual Attention Network for Scene Segmentation
  • Stack和Queue(3)
  • 怎样把学生的成绩单独告知家长?
  • vue3父组件控制子组件表单验证及获取子组件数值方法
  • 【JavaEE】【多线程】单例模式
  • Java.6--多态-设计模式-抽象父类-抽象方法
  • JAVA Maven 的安装与配置
  • 【程序分享】PCB元件坐标对齐工具 V1.3
  • [bug] vllm 0.6.1 RuntimeError: operator torchvision::nms does not exist
  • 处理Hutool的Http工具上传大文件报OOM
  • transforms的使用
  • python-PyQt项目实战案例:制作一个视频播放器
  • 反向传播的微积分原理 | Chapter 4 | Deep Learning | 3Blue1Brown
  • matlab读取excel表格
  • 基于springboot+vue实现的助学兼职系统(源码+L文+ppt)4-092
  • ⌈ 传知代码 ⌋ 农作物病害分类(Web端实现)
  • CMU生成式人工智能大模型:从入门到放弃(九)
  • HTML基础总结
  • EXCELL中如何两条线画入一张图中,标记坐标轴标题?
  • Zabbix企业级分布式监控环境部署
  • 水轮发电机油压自动化控制系统解决方案介绍
  • 今天不分享技术,分享秋天的故事
  • 转录组上游分析流程(三)
  • excel判断某一列(A列)中的数据是否在另一列(B列)中
  • [环境配置]macOS上怎么查看vscode的commit id
  • .net framework 3.5sp1组件安装进度条不动启动错误怎么解决