package-lock冲突
Published on 2021-12-04 10:35 in package-lock冲突 with dutrmp19

package-lock冲突

C:\Users\usr>npm --version
7.24.1

起因

作为苦逼前端,得和npm打交道,这不算什么,最苦逼的是要和各种依赖打交道。

众所周知,npm会把依赖放在package.jsonpackage-lock.json中。

众所不知,如果这个项目被clone了,直接npm install可能会改写package-lock.json

这一点非常让人无语。

开发者安装了各种依赖,生成了自己的package.jsonpackage-lock.json,然后push,

另一个开发者拿到了这两个文件,npm install完以后,package-lock.json就变了,他一推送,完了,原来开发者的package-lock.json也变了,整个项目就跑不起来了。

没错,说的就是我和我的后端。。。

解决

package-lock.json的时候,就不要npm install了,使用命令npm ci

唯一让我无语的是,npm ci会直接删除node_modules,毕竟node_modules里面是记录了每个包的版本的,一些已经安装过的包,会被直接删除,然后重新安装一遍。当然,这一点可以通过加上cache参数解决,见参考[2]。

参考

  1. package-lock.json 冲突解决

  2. npm ci 与 install 的区别 - 牛蛙泳的文章 - 知乎

  3. npm ci命令

如果您有任何关于文章的建议,欢迎评论或在 GitHub 提 PR

作者:dutrmp19
本文为作者原创,转载请在 文章开头 注明出处:https://www.cnblogs.com/dutrmp19/p/15641158.html
遵循 CC 4.0 BY-SA 版权协议


posted @   dutrmp19  阅读(378)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示