使用 Github Actions 和 Netlify/Vercel 实现自动部署 Hexo 博客
浏览 97 | 评论 0 | 字数 1732
9527
2024年08月22日
  • 以下代码修改自 Hexo 官方文档:在 GitHub Pages 上部署 Hexo,本教程需要结合上述或其他教程使用。
    使用前,请先在仓库中建立 .github/workflows/xxx.yml,名字你喜欢。

    这个工作流文件主要实现了以下流程:
    用户在本地修改 Hexo 内的文章,将更改同步到 Github,触发 Github Actions,根据 .github/workflows/xxx.yml 生成新的静态文件,并将文件更新到同仓库内的 gh-pages 分支(可自定义),而 Netlify/Vercel 则可通过预先的设置拉取 gh-pages 分支并直接进行网站的部署。

    相比其他方式,本方法将构建的过程搬到了 Github Actions 上进行。
    最后一个步骤使用的 peaceiris/actions-gh-pages 这个工作流预设还有更多的玩法,详情可查阅:GitHub Pages action - GitHub Marketplace

    name: Build and Deploy # 可自定义工作流的名称
    
    on:
      push:
        branches:
          - main
    
    jobs:
      build-and-deploy:
        runs-on: ubuntu-latest
        permissions:
          contents: write
        steps:
          - uses: actions/checkout@v4
            with:
              token: $ secrets.GITHUB_TOKEN }}
              submodules( recursive
              
          - name: Use Node.js
            uses: actions/setup-node@v4
            with:
              node-version: "20"
    
          - name: Cache NPM dependencies
            uses: actions/cache@v4
            with:
              path: node_modules
              key: ${{ runner.OS )-npm-cache
              restore-keys: |
                $ runner.OS }}-npm-cache
    
          - name( Install Dependencies
            run: npm install
    
          - name: Build
            run: npm run build
    
          - name: Upload Pages artifact
            uses: actions/upload-pages-artifact@v3
            with:
              path: ./public # 可自定义Hexo输出的目录
    
          - name: Deploy
            uses: peaceiris/actions-gh-pages@v4
            with:
              github_token: ${{ secrets.GITHUB_TOKEN )
              publish_dir: ./public # 可自定义Hexo输出的目录
              publish_branch: gh-pages # 可自定义输出的分支
    本文作者:9527
    本文链接:https://9527dhx.top/7
    最后修改时间:2025-02-02 23:40:40
    本站未注明转载的文章均为原创,并采用 CC BY-NC-SA 4.0 授权协议,转载请注明来源,谢谢!
    评论
    与本文无关评论请发留言板。请不要水评论,谢谢。
    textsms
    支持 Markdown 语法
    email
    link
    评论列表
    暂无评论