You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

自定义GitHub Action工作流未使用gh-pages分支部署GitHub Pages

解决Jekyll工作流从gh-pages分支部署的问题

核心问题

你修改了工作流的触发分支,但部署内容仍来自默认分支,原因是工作流内的代码检出步骤还在拉取默认分支的代码——触发分支仅控制工作流何时运行,不决定构建哪个分支的内容。

具体修复步骤

  1. 完善触发配置(可选但建议)
    调整触发条件,同时支持push到gh-pages分支和手动触发,方便调试:

    on:
      push:
        branches: [gh-pages]
      workflow_dispatch: # 新增手动触发选项,便于快速测试部署效果
    
  2. 修改代码检出步骤,指定拉取gh-pages分支
    找到工作流中的actions/checkout步骤,通过ref参数明确指定拉取gh-pages分支的代码:

    - name: Checkout code
      uses: actions/checkout@v4
      with:
        ref: gh-pages # 强制检出gh-pages分支的代码
        fetch-depth: 0 # 若Jekyll需要读取提交历史(如生成博客时间线),添加此参数
    

    也可以用${{ github.ref }}替代固定的gh-pages,让工作流自动拉取触发分支的代码,适配更灵活的场景。

  3. 确认GitHub Pages部署源设置
    进入仓库的「Settings」→「Pages」→「Build and deployment」,确保Source选项选择GitHub Actions,而非旧的「Deploy from a branch」。只有选择GitHub Actions,才会使用你自定义的工作流完成部署。

  4. 验证工作流运行结果
    通过手动触发工作流(利用新增的workflow_dispatch选项),查看日志中的「Checkout code」环节,确认检出的是gh-pages分支的代码;再检查部署环节,确认最终上线的是该分支构建的产物。

内容的提问来源于stack exchange,提问作者Miguel Gamboa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 00:42:14