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

GitHub Enterprise中semantic-release-action拉取npm包报401、404错误求助

问题现象

在GitHub Enterprise仓库使用semantic-release-action做语义化版本管理,前期运行正常,近期执行npm ci --only=prod时报401错误,提示GitHub Package Registry认证失败。完成认证配置后401错误消失,但出现新的404错误,提示无法从npm.pkg.github.com找到@actions/core@1.2.7包,提示该包不存在于actions所有者名下。

已执行的配置操作
  • 新增Setup node步骤
  • 在.npmrc中配置了github.com个人账号生成、拥有读包和仓库权限的GITHUBCOM_TOKEN认证信息
  • 配置@yrshaikh对应的registry指向GitHub Packages
解决方案
  • 优先做源的作用域分流,不要将全局默认registry设置为GitHub Packages。修改.npmrc配置如下,仅@yrshaikh作用域的包走GitHub Packages,其余公共包走npm官方源,避免公共包去私有 registry 寻址:
@yrshaikh:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=${GITHUBCOM_TOKEN}
registry=https://registry.npmjs.org/
  • 检查依赖锁文件(package-lock.json/yarn.lock等),确认是否将@actions/core的下载源误锁定为GitHub Packages,如果存在可删除锁文件中对应条目后重新执行npm install生成新的锁文件,也可以单独执行npm install @actions/core@1.2.7 --registry=https://registry.npmjs.org更新依赖源信息。
  • 若企业内部强制要求所有依赖必须走GitHub Packages拉取,联系仓库管理员配置GitHub Packages的上游代理规则,自动同步npm官方源的公共包,或者手动将@actions/core@1.2.7同步发布到内部GitHub Packages的对应命名空间下。
  • 若你的GitHub Enterprise实例未开启公共包同步,也可以临时将@actions作用域的源单独配置为npm官方源,在.npmrc中新增如下配置即可:
    @actions:registry=https://registry.npmjs.org/

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 04:57:03