发布到GitHub Pages
本地发布到GitHub Pages
linux 系统下安装hexo-deployer-git
1
1
npm install hexo-deployer-git --save修改根目录下的 _config.yml,配置 GitHub 相关信息
5
1
deploy:2
type: git3
repo: https://github.com/zhangwuji/zhangwuji.github.io.git4
branch: main5
token: ghp_repo,填写刚刚新建好的仓库
token 为 GitHub 的 Personal access tokens 直达链接, ,获取方式如下图: (需要repo授权)

部署到GitHub
1
1
hexo g -d浏览器访问 https://zhangwuji.github.io/ (这里换成自己的地址) ,部署成功

通过 github actions 发布到公共仓库的 Git Page
原本博客的发布方式为:
- 在本地部署好 Hexo 博客的运行环境
- 通过 [hexo g] 将写好的 Markdown 文件转化为 HTML 文件
- 然后用 [hexo d] 把生成的 public 文件夹内所有内容推送到 Github 仓库中
这样直接将生成的可以运行的实际产物(public文件夹)推送到 GitHub 仓库上,而不是博客源码,每当本地环境变更或者想在别的电脑上写文章时就麻烦了、必须得重新部署一遍环境。
规划为:
一个私有仓库 _blog 用于存放博客源码,此仓库已启用了 Github actions 用作生成博客产物 public。
公共仓库 [zhangwuji.github.io] 用于存放博客产物 public, 此仓库已启用了 Github Pages 用作博客展示。
操作步骤:
1. 获取 TOKEN
首先到个人中心设置 Personal access tokens 直达链接,token 能让 GitHub Actions 构建所在的虚拟系统对发布仓库拥有权限可以进行推送操作。

2.设置 Actions Secrets
打开 _blog 私有仓库,将本地目录的 hexo 源码推送到_blog 仓库里,然后进到 _blog 仓库的 设置-[secrets and variables]-[Actions]-[secrets]里新建一个名为[ACCESS_TOKEN]的键值项,内容填上一步获取到的 token 值。

3.Actions 设置
在博客源码根目录下新建目录 .github/workflows ,然后在其下新建任务文件 deployment.yml
27
1
name: Publish Hexo to gitpage2
on:3
push:4
branches:5
- main # 如果源码与gitpage用同一仓库则修改为hexo源码对应分支6
jobs:7
build:8
runs-on: ubuntu-latest9
steps:10
- uses: actions/checkout@v211
with:12
ref: main13
- name: Install dependencies14
run: |15
npm install -g hexo-cli # 给虚拟机装上hexo运行环境16
npm install # 安装 package.json 中记录的所有插件17
- name: Generate Hexo site18
run: |19
hexo clean20
hexo generate21
- name: Deploy to B repo22
uses: peaceiris/actions-gh-pages@v323
with:24
personal_token: $ # Personal access token25
external_repository: zhangwuji/zhangwuji.github.io # 发布的仓库地址26
PUBLISH_BRANCH: main27
PUBLISH_DIR: ./public此时编写 Markdown 文件推送到_blog 仓库,然后前往源码仓库的 Actions,即可看到自动化任务正在进行,等待一会看到任务执行成功

在查看公共仓库的action,等任务执行成功后。

本文链接: 发布到GitHub Pages https://aikunzhe.github.io/p/hexo/1699466263266.html
版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!