Удаление `package-lock.json` для быстрого разрешения конфликтов

1

Обычно при создании команды я сталкивался с конфликтами слияния в package-lock.json и моим быстрым package-lock.json всегда было удалить файл и восстановить его с помощью npm install. Я не задумывался всерьез о значении этого исправления, потому что раньше оно не вызывало какой-либо ощутимой проблемы.

Есть ли проблема с удалением файла и npm его созданием npm вместо разрешения конфликтов вручную?

Теги:
npm

1 ответ

2
Лучший ответ

Да, это может и очень плохо повлияет на весь проект.

  1. если ваша команда не запускает npm install после каждого git pull вы используете разные версии зависимостей. Так что это заканчивается "но это работает для меня!" и "я не понимаю, почему мой код не работает для вас"

  2. даже если вся команда запускает npm install это еще не значит, что все в порядке. в какой-то момент вы можете обнаружить, что ваш проект действует по-другому. в части, которую вы не меняли годами. и после (возможно, довольно болезненной) отладки вы найдете ее из-за того, что зависимость 3-го уровня обновилась до следующей основной версии, и это привело к серьезным изменениям.

Вывод: никогда не удаляйте package-lock.json. в вашем случае лучше сделать следующим образом:

Подход 1

  1. отменить изменения в package-lock.json
  2. stash ваши изменения
  3. pull самую последнюю версию кода
  4. запустите npm install для всех зависимостей, которые вам нужно добавить
  5. отменить ваши изменения

Подход 2

  1. запустить слияние
  2. для разрешения конфликтов выберите стратегию "только их изменения" на package-lock.json
  3. запустите npm install чтобы зависимости, которые вы хотите добавить, также были включены в package-lock.json
  4. закончить с коммитом коммит

Ещё вопросы

Сообщество Overcoder
Наверх
Меню