Skip to content

作者

novlan1

发布失败常见原因

1. pnpm-lock.yaml 未同步

报错如下:

 ERR_PNPM_OUTDATED_LOCKFILE  Cannot install with "frozen-lockfile" because pnpm-lock.yaml is not up to date with <ROOT>/package.json
Note that in CI environments this setting is true by default. If you still need to run install in such cases, use "pnpm install --no-frozen-lockfile"
    Failure reason:

解决方法:

  • 本地执行 pnpm i,然后提交 pnpm-lock.yaml

查看示例流水线

2. 本地构建问题

构建失败具体原因就非常多了,比如下面这种 src/component 没更新的:

下面是小程序下使用了不支持的语法:

示例流水线

  1. 文件问题
  2. 语法问题

解决方法:

  • 本地解决问题,执行 npm run build 或者 npm run build:mp 等命令,没问题后提交

3. 分支名不合法

如果分支名中包含“零宽空格”,会导致发布失败。

下面的这个分支名称,就包含了“零宽空格”,在某些 IDE 下不可见,复制到其他地方后可见。

sh
feature/story-map-​whitelist​

这种“零宽空格”在 base64.encode 时会失败,即 btoa,报错如下:

The string to be encoded contains characters outside of the Latin1 range

解决方法:

  • 使用不包含“零宽空格”的新分支,重新发布