“Package-lock.json”角色问题如何解决?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (8)

npm @ 5已经发布,它有一个新的功能package-lock.json文件(之后npm install)让我感到困惑。我想知道,这个文件有什么作用?

提问于
用户回答回答于

它存储一个精确的,版本化的依赖关系树,而不是像package.json本身(例如1.0。*)那样使用星型版本化。这意味着可以保证其他开发人员或产品发布等的依赖关系。它还具有锁定树的机制,但通常会在package.json更改时重新生成。

npm github页面

对于npm修改node_modules树或package.json的任何操作,将自动生成package-lock.json。它描述了生成的确切树,以便后续安装能够生成相同的树,而不管中间依赖性更新如何。 这个文件旨在被提交到源代码库,并提供各种用途: 描述依赖关系树的单一表示,以确保队友,部署和持续集成确保安装完全相同的依赖关系。 为用户提供一个工具,使其能够“前往”node_modules的先前状态,而无需提交目录本身。 通过可读的源代码控制差异来促进树更改的更大可见性。 并通过允许npm跳过先前安装的软件包的重复元数据分辨率来优化安装过程。“

扫码关注云+社区