2026/7/30更新内容

本次大改的目标是将网页文件从github公共仓库转到私人仓库并通过cloudfare的page服务进行解析部署。

注意:此次butterfly theme去除了git记录转为普通文件夹,之后升级文件需要手动粘贴,后续换主题最好直接做成子模块上传

. gitignore文件的新建

1
2
3
4
5
6
.DS_Store
node_modules/
public/
.deploy_git/
*.log
themes/butterfly_backup/

很重要的一个前提就是这种搭建方法,需要把除了public之外的源文件上传到github进行线上打包,而本地的public文件应该会在每次本地预览时重建,所以需要避免将public推送到github仓库里。与此同时,也需要避免把本地的主题备份上传。

1
git status

应该不出现任何红色字符串

更新.gitignore的指令

1
git add .gitignore

远程仓库地址免登录

转私人仓库后每次终端传输需要登录,已将token(无限期)加入到远程仓库的地址里,具体看备忘录

GitHub Actions的配置

新增 .github/workflows/deploy.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
name: Deploy Hexo Blog

on:
push:
branches:
- main

jobs:
build-and-deploy:
runs-on: ubuntu-latest

permissions:
contents: write

steps:
- name: Checkout 源码
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: 使用 Node.js
uses: actions/setup-node@v4
with:
node-version: '22'
cache: 'npm'

- name: 安装依赖
run: |
npm ci || npm install
npm install -g hexo-cli

- name: 生成静态文件
run: |
hexo clean
hexo generate

- name: 部署到 GitHub Pages
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
publish_branch: gh-pages
force_orphan: true

Cloudflare部署

worker ang page功能在page指定读取github仓库之后

配置项
项目名称emic019
生产分支main
框架预设
构建命令npm run build
构建输出目录public

域名在page的自定义域一栏配置,基本没啥要改的,后边就一步步来。