GitHub Actions部署pnpm版Vite应用遇错及部署链接缺失问题
解决pnpm+Vite项目GitHub Actions部署的两个问题:仓库找不到&部署链接缺失
第一个问题:actions/actions-gh-pages仓库找不到错误
错误原因
你使用的actions/actions-gh-pages官方Action仓库已被归档移除,且当前Workflow同时混用了GitHub新版Pages部署流程(actions/configure-pages、actions/upload-pages-artifact)和已废弃的旧Action,直接触发仓库找不到的报错。
修复步骤
- 删除deploy任务中
uses: actions/actions-gh-pages@v3的完整步骤 - 替换为新版官方部署Action:
actions/deploy-pages@v2,该步骤会自动关联前面上传的构建产物
第二个问题:部署成功但无法获取部署链接
错误原因
你的Workflow环境配置存在两处问题:
- 缩进错误:
name: github-pages未缩进在environment字段下,导致环境配置不生效 - 未正确关联部署步骤ID:注释了
url字段,且未给deploy步骤设置id,无法读取steps.deployment.outputs.page_url变量 - 额外问题:
upload-pages-artifact的path设为.会上传整个仓库,而非Vite的构建产物目录dist
修复步骤
- 修正
environment的缩进,将name: github-pages缩进至environment下一级 - 取消
url字段的注释,给deploy步骤添加id: deployment以获取输出链接 - 将
upload-pages-artifact的path改为./dist,确保只上传Vite构建产物
完整修复后的Workflow脚本
name: pnpm Example Workflow on: push: jobs: build: runs-on: ubuntu-latest strategy: matrix: node-version: [18] steps: - uses: actions/checkout@v3 - uses: pnpm/action-setup@v2 with: version: 7 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} cache: 'pnpm' - name: Install dependencies run: pnpm install - name: Build run: pnpm run build deploy: needs: build # 确保部署任务在构建完成后执行 environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} runs-on: ubuntu-latest steps: - name: Setup Pages uses: actions/configure-pages@v3 - name: Upload artifact uses: actions/upload-pages-artifact@v1 with: path: ./dist # 上传Vite构建产物目录 - name: Deploy to GitHub Pages id: deployment # 设置步骤ID用于获取部署链接 uses: actions/deploy-pages@v2
额外注意事项
- 确保仓库已开启GitHub Pages功能,且部署源选择
GitHub Actions - 若Vite项目有自定义基础路径,需在
vite.config.js中设置base: '/你的仓库名称/',避免部署后资源加载失败
内容的提问来源于stack exchange,提问作者Zak
相关产品推荐
相关产品推荐

