npm 5 was released today,其中一个新功能包括通过创建package-lock.json
文件进行确定性安装.
这个文件应该保存在源代码管理中吗?
我假设它类似于yarn.lock
和composer.lock
,它们都应该保存在源代码控制中.
npm 5 was released today,其中一个新功能包括通过创建package-lock.json
文件进行确定性安装.
这个文件应该保存在源代码管理中吗?
我假设它类似于yarn.lock
和composer.lock
,它们都应该保存在源代码控制中.
是的,package-lock.json
计划被判断进源代码管理.如果您使用的是npm 5+,您可能会在命令行上看到此通知:created a lockfile as package-lock.json. You should commit this file.
根据npm help package-lock.json
:
package-lock.json
是自动生成的,适用于任何需要npm的操作This file is intended to be committed into source repositories,发球
描述依赖关系树的单一表示形式,以确保团队成员、部署和持续集成能够安装完全相同的依赖关系.
为用户提供一个工具,让他们可以"穿越"到之前的
node_modules
个状态,而无需提交目录本身.通过可读的源代码管理差异,提高树更改的可见性.
并通过允许npm跳过以前安装的包的重复元数据解析来优化安装过程.
关于
package-lock.json
的一个关键细节是,它无法发布,而且如果
package-lock.json
和npm-shrinkwrap.json
都存在于