使用一台电脑管理两个 GitHub 账号的 Hexo 博客完整指南
使用一台电脑管理两个 GitHub 账号的 Hexo 博客完整指南
1. 事前准备
- 域名(非必须):你可以使用免费的 GitHub.io分配的域名。
- GitHub(必须):- 注册两个 GitHub 账号:- 第一个账号:用户名 user1,邮箱account_one@example.com。
- 第二个账号:用户名 user2,邮箱account_two@example.com。
 
- 第一个账号:用户名 
- 假设你已经注册并可以登录这两个账号。
 
- 注册两个 GitHub 账号:
- Cloudflare(非必须):可用于加速博客访问。
- 事先安装好了 Node、Git、**VScode**等软件,可以参考【Hexo博客系列】No.1 搭建Hexo博客,快速简洁高效,零成本搭建个人博客:Hexo + GitHub Pages + Cloudflare Pages 完整指南 #blog - YouTube
2. 配置 Git 和连接第一个 GitHub 账号 (user1 - account_one@example.com)
我们将首先配置与第一个 GitHub 账号相关的设置。
2.1 配置第一个账号的用户名和邮箱(全局)
打开 Git Bash,执行以下命令设置 Git 的全局用户信息(关联第一个 GitHub 账号),通过 git config -l 检查是否配置成功。
| 1 | git config --global user.name "user1" | 
- 注意:这里的 user.name设置为你的第一个 GitHub 用户名(user1)。user.email必须是你第一个 GitHub 账号设置中的 Primary email address。
2.2 为第一个账号生成并配置 SSH 密钥
- 在 - Git Bash中执行以下命令生成 SSH 密钥对,关联第一个邮箱:- 1 - ssh-keygen -t rsa -C "account_one@example.com" - 提示 Enter file in which to save the key时,直接回车,使用默认文件名id_rsa和id_rsa.pub。
- 提示 Enter passphrase时,也直接回车(不设置密码),方便使用。
 
- 提示 
- 找到生成的密钥文件(通常在 - C:\Users\你的Windows用户名\.ssh\目录下),用记事本打开- id_rsa.pub文件,复制里面的所有内容。- id_rsa(私钥 - 不要泄露)
- id_rsa.pub(公钥 - 需要添加到 GitHub)
 
- 将 SSH KEY 配置到 - GitHub 登录你的第一个 GitHub 账号 ( - user1,邮箱- account_one@example.com),点击右上角头像 选择 settings,进入设置页后选择 SSH and GPG keys,点击 New SSH key,名字随便起,Key type 选择- Authentication Key,公钥填到- Key那一栏,点击 Add SSH key。

2.3 测试第一个账号的 SSH 连接
在 Git Bash 中输入以下命令测试连接:
| 1 | ssh -T git@github.com | 
- 如果是第一次连接,会提示 Are you sure you want to continue connecting (yes/no/[fingerprint])?,输入yes并回车。
- 如果看到类似 Hi user1! You've successfully authenticated, but GitHub does not provide shell access.的信息,说明连接成功。
2.4 为第一个账号创建 GitHub Pages 仓库
- 登录你的第一个 GitHub 账号 (user1),点击右上角的+按钮,选择 New repository ,创建一个<用户名>.github.io的仓库。例如,Repository name 必须是:user1.github.io。

- Public 选择 - Public方便第一次部署检查问题。
- 点击 Create repository 进行创建即可。 
3. 初始化第一个 Hexo 博客 (blog-demo)
3.1 创建项目文件夹并安装 Hexo
- 创建一个文件夹来保存博客源码(例如: - D:/Hexo-Blog/blog-demo);
- 在 - blog-demo文件夹内右键鼠标,选择- Open Git Bash here,在- Git BASH输入如下命令安装 Hexo:- 1 - npm install -g hexo-cli && hexo -v 
- 安装完后输入 - hexo -v验证是否安装成功。
 
3.2 初始化 Hexo 项目
在 blog-demo 目录下执行:
| 1 | hexo init . | 
- .表示在当前目录初始化。
- 这会安装 Hexo 所需的依赖。
初始化项目后,blog-demo 有如下结构:
- node_modules:依赖包
- scaffolds:生成文章的一些模板
- source:用来存放你的文章
- themes:主题
- .npmignore:发布时忽略的文件(可忽略)
- _config.landscape.yml:主题的配置文件
- config.yml:博客的配置文件
- package.json:项目名称、描述、版本、运行和开发等信息
3.3 启动并预览本地博客
在 blog-demo 目录下执行
| 1 | hexo clean && hexo s | 
- hexo clean清理缓存。
- hexo s(或- hexo server) 启动本地服务器。
打开浏览器,输入地址:http://localhost:4000/ ,看到默认的 Hexo 页面,说明你的博客已经构建成功了。

3.4 配置第一个博客的部署设置
- 安装 Hexo 部署插件-hexo-deployer-git - 在博客源码文件夹右键打开 - Git Bash,输入下面命令安装 Hexo 的 Git 部署插件;- 1 - npm install hexo-deployer-git --save 
- 使用 VSCode 或其他文本编辑器打开 - blog-demo目录下的- _config.yml文件(这是 Hexo 的主配置文件)。- 找到文件末尾的 deploy 部分,修改为: - 1 
 2
 3
 4- deploy: 
 type: git
 repository: git@github.com:user1/user1.github.io.git
 branch: main # 或 gh-pages,取决于你的仓库设置- 将 user1/user1.github.io.git替换为你第一个账号的实际仓库地址。
- 分支要改为 main代表主分支(注意缩进)。
 
- 将 
- 回到 - Git Bash(在- blog-demo目录下),执行部署命令:- 1 - hexo clean && hexo generate && hexo deploy - 或使用缩写(在 VSCode 终端中): - 1 - hexo cl && hexo g && hexo d - 注意:deploy时可能要你输入 username 和 password(尽管使用了 SSH,但某些情况下仍可能提示)。 
- 如果出现 Deploy done,则说明部署成功了。稍等两分钟,打开浏览器访问: - https://user1.github.io,这时候我们就可以看到博客内容了。
4. 配置 Git 和连接第二个 GitHub 账号 (user2 - account_two@example.com)
现在我们为第二个账号设置独立的环境。
4.1 为第二个账号生成新的 SSH 密钥对
- 打开 - Git Bash。
- 为第二个账号 ( - account_two@example.com) 生成新的 SSH 密钥对,指定不同的文件名以避免冲突:- 1 
 2- ssh-keygen -t rsa -C "account_two@example.com" -f ~/.ssh/id_rsa_user2 
 ssh-keygen -t rsa -C "202226041@chd.edu.cn" -f C:/Users/Guoyi/.ssh/id_rsa_ahhuipt- -f ~/.ssh/id_rsa_user2:指定密钥文件名为- id_rsa_user2和- id_rsa_user2.pub。
 - 提示 Enter passphrase时,直接回车(不设置密码)。
 

4.2 将第二个 SSH 公钥添加到第二个 GitHub 账号
用记事本打开 ~/.ssh/id_rsa_user2.pub 文件,复制所有内容,登录你的第二个 GitHub 账号 ,进入 Settings -> SSH and GPG keys -> 点击 New SSH key,名字随便起,Key type 选择 Authentication Key,公钥填到 Key 那一栏,点击 Add SSH key。
4.3 配置 SSH 客户端以区分不同账号
为了让 Git 知道连接不同的 GitHub 账号时使用哪个密钥,需要配置 SSH 客户端。
在 C:\Users\你的Windows用户名\.ssh\ 目录下,检查是否存在 config 文件。如果没有,使用文本编辑器新建一个,文件名为 config(没有扩展名)。
编辑 config 文件,添加以下内容:
| 1 | # Default GitHub account (user1 - account_one@example.com) | 
- Host github.com:这是默认配置,关联第一个账号的密钥 (- id_rsa)。
- Host github-user2:这是为第二个账号创建的自定义别名。后面部署第二个博客时会用到这个别名。
- IdentityFile:分别指向两个不同的私钥文件。
- IdentitiesOnly yes:确保只使用指定的密钥。
4.4 为第二个账号创建 GitHub Pages 仓库
- 登录你的第二个 GitHub 账号,点击右上角的 - +按钮,选择 New repository ,创建一个- <用户名>.github.io的仓库。- Repository name 必须是: - user2.github.io(注意:前缀必须为用户名,此为预览博客需要,后期可修改仓库名)
- Public 选择 - Public方便第一次部署检查问题,点击 Create repository 进行创建即可。
5. 初始化第二个 Hexo 博客 (blog-main)
5.1 创建项目文件夹并安装 Hexo
- 在你的电脑上创建一个新的文件夹来存放第二个博客的源码,例如: - D:\Hexo-Blog\blog-main。
- 在 - blog-main文件夹内,按住- Shift键并右键,选择 在此处打开 PowerShell 或 Open Git Bash here。
- (重要)为这个本地仓库设置特定的用户信息(覆盖全局配置),这确保了在此目录下的 Git 提交(包括 Hexo 的部署)使用第二个账号的信息。 - 1 
 2
 3- git init # 如果目录不是 Git 仓库,需要先初始化 
 git config user.name "user2"
 git config user.email "account_two@example.com"
- 初始化 Hexo 项目: - 1 
 2- hexo init . 
 npm install
5.2 启动并预览本地博客
在 blog-main 目录下执行:
| 1 | hexo clean && hexo s | 
打开浏览器访问 http://localhost:4000/,预览第二个博客。
5.3 配置第二个博客的部署设置
- 确保在 - blog-main目录下,安装 Hexo 部署插件(如果尚未安装):- 1 - npm install hexo-deployer-git --save 
- 使用 VSCode 或其他文本编辑器打开 - blog-main目录下的- _config.yml文件。找到文件末尾的- deploy部分,关键在于- repository的主机名部分要使用你在- config文件中定义的别名- github-user2:- 1 
 2
 3
 4
 5- deploy: 
 type: git
 # 注意这里的主机名是 config 文件中定义的别名
 repository: git@github-user2:user2/user2.github.io.git
 branch: main # 或 gh-pages- git@github-user2:这部分告诉 SSH 客户端使用- config文件中- Host github-user2的配置,即使用- id_rsa_user2私钥。
 
- 回到 - Git Bash(在- blog-main目录下),执行部署命令:- 1 
 2- hexo clean && hexo generate && hexo deploy 
 hexo cl && hexo g && hexo d
如果出现 Deploy done,则说明部署成功了。稍等两分钟,打开浏览器访问:https://user2.github.io ,这时候我们就可以看到博客内容了。
总结
通过以上步骤,你实现了:
- 全局配置:为第一个 GitHub 账号 (user1) 设置了全局的 Git 用户信息和默认 SSH 密钥。
- 本地覆盖:为第二个博客 (blog-main) 的本地目录设置了特定的 Git 用户信息 (user2)。
- 多账号 SSH 管理:通过生成不同的 SSH 密钥对 (id_rsa,id_rsa_user2) 并配置~/.ssh/config文件,实现了使用不同密钥连接到同一个 GitHub 主机 (github.com) 但对应不同账号。
- 独立部署- 第一个博客 (blog-demo) 通过默认的git@github.com:...地址部署到user1.github.io。
- 第二个博客 (blog-main) 通过自定义别名git@github-user2:...地址部署到user2.github.io。
 
- 第一个博客 (
现在你可以分别在 blog-demo 和 blog-main 文件夹中独立地开发、预览和部署你的两个博客了。



