Все знают, типа полезная штука, фиксирует версии пакетов, надо коммитить, нельзя удалять, блаблабла...
Сегодня столкнулся впервые с проблемой - npm install на сервере выполнялся с ошибкой, пока я не удалил package-lock. Вся локальная разработка происходит на Ubuntu 16.04, эта же Убунта стоит на сервере.
Что это было?
Как же его правильно использовать, кроме того как бездумно коммитить? Его надо периодически обновлять?
А вот так правильно и использовать - удалять.
Ну допустим. Есть очень хороший модуль (к примеру, nodemailer соглашается работать только с ним - и больше ни с кем), но npm его не устанавливает - просто несёт какую-то чушь и не устанавливает. Я устанавливаю его посредством yarn. Что после этого нужно сразу сделать? - Правильно, выкинуть package-lock.json, иначе, при любой следующей манипуляции с npm он этот установленный пакет выкинет. Ещё и отчитается об этом - "удалено 5 пакетов".
MaxKorz, Да мы же как-то раньше жили без package-lock - и ничего, выжили. А какую чушь несёт npm я уж просто не помню - точно помню, что чушь. А как "работает инструмент"? - да так и работает: лезет, куда его не просят.