抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

使用Hexo和GitPages搭建博客

配置Action

申请Github_Token

申请链接

配置Git_Token

配置Git_Token

创建Action文件

在博客源码根目录下创建 .github/workflows/post.yaml 文件

文件内容

name: Deployment

# 触发条件:在 push 到 main 分支后

on:
  push:
    branches:
      - main
  
jobs:
  Blog-Deployment:
    runs-on: ubuntu-latest
    env:
      TZ: Asia/Shanghai
    steps:
    - name: Checkout Blog_source
      env:
        GH_TOKEN: ${{ secrets.GH_TOKEN }}
      run: |
        git clone "https://[email protected]/Fuxx-1/Blog_source"
    - name: Setup Node.js
      uses: actions/setup-node@v1
      with:
        node-version: '18.x'
    - name: Install dependencies & Generate static files
      run: |
        cd ./Blog_source
        node -v
        npm i -g hexo-cli
        npm i
        hexo clean
        hexo g
    - name: Deploy to Github Pages
      env:
        GIT_NAME: fuxx-1
        GIT_EMAIL: ${{ secrets.GIT_EMAIL }}
        REPO: github.com/fuxx-1/fuxx-1.github.io
        GH_TOKEN: ${{ secrets.GH_TOKEN }}
      run: |
        cd ./Blog_source
        cd ./public && git init && git add .
        git config --global user.name $GIT_NAME
        git config --global user.email $GIT_EMAIL
        git commit -m "Site deployed by GitHub Actions from Blog_Source"
        git push --force --quiet "https://$GH_TOKEN@$REPO" master:master

各部分代码作用解释

on:
  push:
    branches:
      - main

触发条件:在 push 到 main 分支后

jobs:
  Blog-Deployment:
    runs-on: ubuntu-latest
    env:
      TZ: Asia/Shanghai
    steps:

使用ubuntu最新版系统运行

    - name: Checkout Blog_source
      env:
        GH_TOKEN: ${{ secrets.GH_TOKEN }}
      run: |
        git clone "https://[email protected]/Fuxx-1/Blog_source"

克隆源码仓库、将 github.com/Fuxx-1/Blog_source 改为自己存放博客源码的仓库

    - name: Setup Node.js
      uses: actions/setup-node@v1
      with:
        node-version: '18.x'

安装node

    - name: Install dependencies & Generate static files
      run: |
        cd ./Blog_source
        node -v
        npm i -g hexo-cli
        npm i
        hexo clean
        hexo g

安装hexo环境和依赖、并生成静态页面

    - name: Deploy to Github Pages
      env:
        GIT_NAME: fuxx-1
        GIT_EMAIL: ${{ secrets.GIT_EMAIL }}
        REPO: github.com/fuxx-1/fuxx-1.github.io
        GH_TOKEN: ${{ secrets.GH_TOKEN }}
      run: |
        cd ./Blog_source
        cd ./public && git init && git add .
        git config --global user.name $GIT_NAME
        git config --global user.email $GIT_EMAIL
        git commit -m "Site deployed by GitHub Actions from Blog_Source"
        git push --force --quiet "https://$GH_TOKEN@$REPO" master:master

将静态页面发布至pages仓库、将 GIT_NAME 改为自己的用户名、将 REPO 改为自己的pages仓库

评论