在尝试研究新的锁文件系统如何适用于 NPM 5 的新 package.lock.json 时,我有点困惑。虽然我目前无法测试其中一些问题,但无论哪种方式,我仍然希望在文档中找到答案以解决任何歧义。我的困惑涉及以下行为:
npm install <module> --save
npm update
npm install
- 锁定文件版本
- 手动编辑
1) 是否最初将模块安装到 package.json 中,如果还没有版本化模块,则仅在 package.lock.json 中安装?
2) 是否更新两个文件中的所有模块?
3) 是否只使用 package.lock.json 来安装所有记录的包?如果锁定文件不存在会发生什么,它会求助于 package.json 吗?
4) 是否维护该特定项目曾经使用过的每个 package.lock.json 的某种记录?如果是这样,您如何查看它们以及如何有效地在它们之间切换?
最后 5) 如果手动编辑 package.json 和/或 package.lock.json 会发生什么?
对我和其他人最有帮助的答案将重申正在回答的问题部分,以避免任何歧义。谢谢!