package-lock冲突
C:\Users\usr>npm --version 7.24.1
起因
作为苦逼前端,得和npm打交道,这不算什么,最苦逼的是要和各种依赖打交道。
众所周知,npm会把依赖放在package.json
和package-lock.json
中。
众所不知,如果这个项目被clone了,直接npm install
可能会改写package-lock.json
。
这一点非常让人无语。
开发者安装了各种依赖,生成了自己的package.json
和package-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]。
参考
如果您有任何关于文章的建议,欢迎评论或在 GitHub 提 PR
作者:dutrmp19
本文为作者原创,转载请在 文章开头 注明出处:https://www.cnblogs.com/dutrmp19/p/15641158.html
遵循 CC 4.0 BY-SA 版权协议
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 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搭建本