keep主题从3.x升级到4.x后GitHub Actions自动部署后文章更新时间异常的问题
Swift Lv6

keep主题4.x新增了很多功能配置,在升级的过程中遇到了一些问题,在此记录一下:

GitHub Actions自动部署后文章更新时间异常

在首页展示的所有的文章更新时间都是一样的:

case

这是因为自动化工作流每次都需要先克隆Hexo博客项目源码,才能进行后续的构建生成和部署等操作。但在Hexo博客中,如果没有在文章的Front-Matter设置updated,Hexo会默认使用文件的最后修改时间作为文章的更新时间,这就是为什么会出现自动部署后所有文章更新时间都一致的真正原因。

两种解决方法

  1. 在博客的Front-Matter添加updated字段:
    updated

  2. 使用主题作者提供的Github Action工作流

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    name: Hexo Deploy GitHub Pages
    on:
    push:
    branches:
    - main
    jobs:
    build-and-deploy:
    runs-on: ubuntu-latest

    steps:
    - name: Checkout
    uses: actions/checkout@v3
    with:
    fetch-depth: 0

    - name: Build and Deploy
    uses: theme-keep/hexo-deploy-github-pages-action@master
    env:
    # Your GitHub Token
    PERSONAL_TOKEN: ${{ secrets.MYBLOG_TOKEN }}

    # The repository the action should deploy to
    PUBLISH_REPOSITORY: TransformersWsz/TransformersWsz.github.io
    BRANCH: main
  • PERSONAL_TOKEN:github token,这样源码仓库TransformersWsz/myblog可以写静态文件仓库TransformersWsz/TransformersWsz.github.io,获取步骤如下:
    1. 创建Personal Access Token
    2. 源码仓库添加token

add_token

注意添加BRANCH: main,否则它会默认推送到静态仓库的gh-pages分支

参考

Powered by Hexo & Theme Keep
Unique Visitor Page View