我使用
yarn add --dev
安装了一个软件包,运行其设置过程,在此过程中,该软件包安装了其他几个软件包并将它们添加到 package.json
(在 devDependencies
中),我假设是使用 npm。太好了,但现在我的 yarn.lock
不同步了。
将
yarn.lock
同步到 package.json
当前状态的正确非手动方式是什么?
编辑:
yarn check
将丢失的软件包显示为:
error Lockfile does not contain pattern: <package>@<version>
但它没有添加它们。
运行
yarn install
,或者只是 yarn
。
锁定文件会在依赖项发生任何更改时全部更新,即当您运行纱线命令时。
来自 Yarn 文档:
您的yarn.lock 文件是自动生成的,应该完全由Yarn 处理。 当您使用 Yarn CLI 添加/升级/删除依赖项时,它将自动更新您的yarn.lock 文件。请勿直接编辑此文件,因为很容易破坏某些内容。
(强调我自己的)
生成锁定文件条目。
yarn generate-lock-entry
注意:此命令仅考虑用于高级用例和工具。给定当前的 package.json 清单文件,它会生成一个锁定文件条目。
如果您遇到校验和问题,这将解决它,
YARN_CHECKSUM_BEHAVIOR=update yarn