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

【从设置到上传的全过程】本地多个hexo博客,怎么设置ssh才不会互相影响

偶然间,想多建一个博客,但电脑已经有一个博客了,怎么设置ssh才不会互相影响呢?

在 Windows 系统上设置多个 Hexo 博客的 SSH 配置,避免互相影响,通常户就需要为每个博客配置不同的 SSH 密钥,并在 ~/.ssh/config 文件中进行相应的配置。

1. 生成多个 SSH 密钥

每个博客使用不同的 SSH 密钥进行身份验证,以避免冲突。假设你有两个 Hexo 博客:

  • 博客 1(例如 blog1.github.com
  • 博客 2(例如 blog2.github.com
步骤:
  1. 打开 Git BashPowerShell
  2. 生成第一个 SSH 密钥:
    ssh-keygen -t rsa -b 4096 -C "your_email@example.com" -f ~/.ssh/id_rsa_blog1
    
    按提示操作并输入密码(可选)。
  3. 生成第二个 SSH 密钥:
    ssh-keygen -t rsa -b 4096 -C "your_email@example.com" -f ~/.ssh/id_rsa_blog2
    
    同样按提示操作。

2. 添加 SSH 密钥到 GitHub

在生成密钥后,需将公钥添加到 GitHub 上,以便与 GitHub 进行通信。

步骤:
  1. 登录 GitHub。
  2. 进入 Settings > SSH and GPG keys
  3. 点击 New SSH key,输入标题并粘贴每个密钥对的公钥(可以通过 cat ~/.ssh/id_rsa_blog1.pub 查看公钥,类似地查看 id_rsa_blog2.pub)。

3. 配置 ~/.ssh/config 文件

为了让系统知道使用哪个密钥连接哪个博客,你需要在 ~/.ssh/config 中进行配置。

步骤:
  1. 打开 Git BashPowerShell

  2. 编辑或创建 ~/.ssh/config 文件,使用以下内容:

    # 博客 1 配置
    Host blog1.github.comHostname github.comUser gitIdentityFile C:/Users/你的用户名/.ssh/id_rsa_blog1IdentitiesOnly yes# 博客 2 配置
    Host blog2.github.comHostname github.comUser gitIdentityFile C:/Users/你的用户名/.ssh/id_rsa_blog2IdentitiesOnly yes
    

    记得将 你的用户名 替换为实际的用户名,并确保 id_rsa_blog1id_rsa_blog2 的路径正确。

4. 配置 Hexo 项目 Git URL

在每个 Hexo 项目的 Git 配置中,设置相应的远程 URL,使用刚才配置的 Host 名称。

步骤:
  1. 在第一个博客项目的根目录下,打开命令行(Git Bash 或 PowerShell),执行以下命令:
    git remote set-url origin git@blog1.github.com:用户名/博客1仓库.git
    
  2. 在第二个博客项目的根目录下,执行以下命令:
    git remote set-url origin git@blog2.github.com:用户名/博客2仓库.git
    

5. 上传 Hexo 博客

每个博客设置完毕后,你可以正常使用 hexo 命令进行博客上传。

步骤:
  1. 在第一个博客的目录下,运行以下命令进行部署:
    hexo clean
    hexo generate
    hexo deploy
    或者
    hexo clean & hexo d -g
    
  2. 在第二个博客的目录下,运行同样的命令:
    hexo clean
    hexo generate
    hexo deploy
    或者
    hexo clean & hexo d -g
    

总结:

  1. 生成两个不同的 SSH 密钥。
  2. 将每个公钥添加到 GitHub。
  3. 配置 ~/.ssh/config 文件,以指定不同的 SSH 密钥和 Host。
  4. 为每个博客项目配置正确的 Git 远程 URL。
  5. 使用 hexo deploy 命令上传内容。

这样,你就可以在一个系统中同时管理多个 Hexo 博客,并且不会产生 SSH 密钥冲突。

http://www.xdnf.cn/news/6945.html

相关文章:

  • 星火杯大模型应用创新赛学习笔记——datawhale
  • ArrayList-集合使用
  • AGI大模型(20):混合检索之rank_bm25库来实现词法搜索
  • LVGL- 圆弧形状控件
  • 制作大风车动画
  • 【高斯拟合最终篇】Levenberg-Marquardt(LM)算法
  • Vue Router——路由基础详解(二)
  • Datawhale PyPOTS时间序列5月第3次笔记
  • Python实例题:Python百行制作登陆系统
  • Java中synchronized 关键字
  • Spring MVC 如何处理文件上传? 需要哪些配置和依赖?如何在 Controller 中接收上传的文件 (MultipartFile)?
  • Selenium无法定位元素的几种解决方案详解
  • AgentCPM-GUI,清华联合面壁智能开源的端侧GUI智能体模型
  • 远程主机状态监控-GPU服务器状态监控-深度学习服务器状态监控
  • 使用ts-node搭建typescript运行环境
  • Java Stream流:高效数据处理的现代解决方案
  • 操作系统学习笔记第4章 (竟成)
  • JavaScript性能优化实战(11):前沿技术在性能优化中的应用
  • 基于Spring Boot和Vue的在线考试系统架构设计与实现(源码+论文+部署讲解等)
  • Canva 推出自有应用生成器以与 Bolt 和 Lovable 竞争
  • 2025年渗透测试面试题总结-安恒[实习]安全工程师(题目+回答)
  • 谈谈未来iOS越狱或巨魔是否会消失
  • 卸载和安装JDK
  • 【持续更新中】架构面试知识学习总结
  • 布隆过滤器深度解析
  • 【OpenGL学习】(二)OpenGL渲染简单图形
  • Spring6学习及复习笔记
  • flutter 配置 安卓、Ios启动图
  • CoverM:contig/bin的相对丰度计算
  • 数字万用表与指针万用表使用方法及注意事项