Hexo 部署 Github Pages, Github Actions自动部署

想整个静态的博客部署在github pages

历经两天的折磨终于是摸索成功了,官网的文档太简陋了,很多东西没说清楚。

欢迎大家访问我的博客!

Canyue
最终实现的效果,一个项目仓库,main 分支存放源代码,gh-pages 存放生成后的网页代码,github pages 加载gh-pages的网页代码。这样,每当我们push代码到main分支的时候,github action会自动构建并将代码发布到gh-pages

搭建环境:

linux plasma manjaro

nodejs 20

git 2.43

github 配置好ssh(可以参考我前面教程)

vscode

你需要熟知的技能: git 相关操作


1. 新建 '用户名.github.io 仓库'

记住这串 .git 后面要用到

2.部署你的github ssh私钥到仓库变量

3.初始化hexo博客目录

注意目录要和github 项目同名

mobeicanyue.github.io 换成你仓库的名字

hexo init mobeicanyue.github.io && cd mobeicanyue.github.io

4.初始化为git仓库并提交

git init

git add .

git commit -m "Initial commit"

这个 git@github.com:mobeicanyue/mobeicanyue.github.io.git 就是前面让你记住那一串

git remote add origin git@github.com:mobeicanyue/mobeicanyue.github.io.git
git push -u origin main

这个时候我们刷新仓库可以看到代码确实上传上去了,但是第一次构建肯定是失败的(打叉),因为还没配置github action

5.新建 gh-pages分支并设置为pages 的默认部署分支

记得点击 save 保存 !

6. 编写github actions 代码

修改这个文件的最后一行,repo改成你的仓库

在 hexo 博客文件夹的 .github 目录创建 deploy.yml 文件

下面配置改你的用户名和邮箱

XML 复制代码
name: Deploy Hexo

on:
  push:
    branches:
      - main

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Check Out
        uses: actions/checkout@v4

      - name: Setup Node
        uses: actions/setup-node@v4
        with:
          node-version: 20

      - name: Setup Git
        run: |
          git config --global user.name "用户名"
          git config --global user.email "邮箱"

      - name: Setup SSH Key
        run: |
          mkdir -p ~/.ssh
          echo "${{ secrets.KEY }}" > ~/.ssh/id_ed25519
          chmod 600 ~/.ssh/id_ed25519

      - name: Install Dependencies
        run: |
          npm install -g hexo-cli
          npm install hexo-deployer-git --save
          npm install

      - name: Deploy Hexo
        run: |
          hexo clean
          hexo generate
          hexo deploy

最后提交并推送

7. 访问站点,部署成功!

就是你的仓库的名字

相关推荐
dwedwswd4 小时前
技术速递|从 0 到 1:用 Playwright MCP 搭配 GitHub Copilot 搭建 Web 应用调试环境
前端·github·copilot
2501_938773874 小时前
技术速递|解锁 Playwright MCP 高级调试:GitHub Copilot 辅助生成动态元素定位脚本
github·copilot
fitpolo6 小时前
Sourcetree图文使用教程(保姆级)
github
算法小菜鸟成长心得7 小时前
如何将本地项目上传至github
github
初学者_xuan7 小时前
零基础新手小白快速了解掌握服务集群与自动化运维(十六)集群部署模块——Keepalived双机热备
运维·自动化·github
逛逛GitHub10 小时前
推荐 11 个本周 yyds 的 GitHub 开源项目。
github
摸鱼仙人~12 小时前
GitHub高质量的开源博客项目推荐
开源·github
敲敲了个代码12 小时前
为什么 Electron 项目推荐使用 Monorepo 架构 [特殊字符][特殊字符][特殊字符]
前端·javascript·学习·架构·electron·github
CoderJia程序员甲14 小时前
GitHub 热榜项目 - 日榜(2025-10-29)
ai·开源·github·1024程序员节·ai教程
顾安r14 小时前
10.25 脚本 整理2024全年 GITHUB每周热门项目
linux·c语言·python·github·bash