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

使用gulp部署项目到gh-pages时报Cannot read property '0' of null错误

报错排查与解决步骤

  • 先删除gulp-gh-pages的本地缓存目录
    该报错绝大多数场景是插件自动生成的缓存目录.publish损坏导致,执行对应系统的删除命令即可:
    # macOS/Linux
    rm -rf .publish
    
    # Windows cmd
    rmdir /s /q .publish
    
  • 确保deploy执行前dist目录有完整构建产物
    你当前的deploy任务没有前置依赖,若直接执行npm run gulp deploy时dist目录为空、或未提前执行build任务生成生产文件,gulp.src匹配不到任何资源就会触发该报错。可以修改deploy任务绑定前置build任务,避免手动漏执行构建:
    // gulp 4.x 写法,将原有deploy任务替换为下面的内容,注意把'build'改成你实际的生产构建任务名
    gulp.task('deploy', gulp.series('build', function () {
      return gulp.src("./dist/**/*")
        .pipe(deploy({
          remoteUrl: "https://github.com/Picke1id/idp-responsive-portfolio.git",
          // 普通项目仓库的GitHub Pages推荐部署到gh-pages分支,无需占用源码分支master
          branch: "gh-pages"
        }))
    }))
    
  • 检查依赖版本兼容性
    如果你使用的是gulp 4.x版本,旧版gulp-gh-pages会存在适配问题,重装最新版本即可:
    npm uninstall gulp-gh-pages
    npm install gulp-gh-pages --save-dev
    
  • 排除CodyHouse干扰的方法
    单独执行生产构建命令,完成后打开dist目录确认所有静态资源完整可用,只要dist目录内容正常,CodyHouse的gulp任务就不会影响部署流程。
  • 额外说明:你不需要将dist目录提交到源码分支,gulp-gh-pages会自动读取本地dist内容推送到部署分支,可将dist重新加入.gitignore减少仓库冗余。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 21:45:03