heroku - 获得 YN0028 锁定文件将被此安装修改,这是明确禁止的。使用 yarn 浆果和heroku

标签 heroku yarnpkg heroku-ci

我正在使用 yarn berry 和 heroku 并且一直收到错误:

       ➤ YN0028: │ The lockfile would have been modified by this install, which is explicitly forbidden.
这表明我的锁文件不包含我列出的所有依赖项。在 yarn 文档中,它说这可以通过运行 yarn install 并将新的锁文件推送到 git 来轻松解决。但是我已经尝试过这个,尝试过新的 node_modules 等,但没有运气。
有没有其他人在使用 yarn berry + heroku 时遇到过这个问题?
我的 repo 是一个使用工作区的 monorepo。

最佳答案

我能够通过将 env-var YARN_ENABLE_IMMUTABLE_INSTALLS 设置为 false 来解决,如建议的 here
这可能是 Yarn Berry 中的一个错误。我在这里报告过:https://github.com/yarnpkg/berry/issues/2948

UPD :我从 GitHub 创建了 repo 的 新本地克隆,在其中运行 yarn install ,它确实在 yarn.lock 中产生了变化。提交这些更改解决了 CI 问题,因此我不再需要禁用 YARN_ENABLE_IMMUTABLE_INSTALLS
原始本地存储库显示了一个干净的 git status ,所以我仍然认为这是一个错误。

关于heroku - 获得 YN0028 锁定文件将被此安装修改,这是明确禁止的。使用 yarn 浆果和heroku,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67062308/

相关文章:

docker - 在 heroku 容器登录中获取权限被拒绝

mysql - 在 Heroku CI 上使用 MySQL

ruby-on-rails - Heroku CI 与 rails 固定装置

node.js - 部署到heroku后如何运行脚本

yarnpkg - 如何通过 yarn 工作区在应用程序中添加多个工作区

typescript - 在 Typescript 项目中添加本地依赖在 JS 中不起作用

docker - 在内联 docker exec 命令中使用时, yarn 不在 Laradock 工作空间的路径中

ruby-on-rails-3 - 为什么终端说 rails 没有突然安装?

ssl - 将 ssl 证书上传到 heroku

python - 为什么heroku local :run wants to use the global python installation instead of the currently activated virtual env?