Рубрики
Без рубрики

Избавьтесь от этого NPM Package-Lock.json

Читайте, чтобы узнать, как отключить Package-lock.json.

Автор оригинала: John Kennedy.

Когда Node.js V8 был выпущен, он пришел с последней версией NPM в то время.

Как тот, кто любит иметь последние функции, я обновил мою версию узла к текущей версии, которая в свою очередь обновляется NPM. После использования NPM V5 на одном из моих личных проектов я заметил Package-lock.json файл, который был вновь представлен.

Сначала у меня не было проблем с файлом, пока не работал с командой на проекте. Мы быстро поняли, что это вызывает ненужные проблемы после того, как мы совершили файл для контроля версий.

Это был расстраивающий момент – нам пришлось удалить файл и добавить его в .gitignore Отказ Я хочу занять некоторое время, чтобы показать, как остановить NPM от создания Package-lock.json файл.

Что такое Package-lock.json?

Цитируя из NPM : Package-lock.json автоматически генерируется для любых операций, где NPM модифицирует либо Node_Modules Дерево или Package.json Отказ Он описывает точное дерево, которое было сгенерировано таким, что последующие установки могут генерировать одинаковые деревья, независимо от промежуточных обновлений зависимости.

Этот файл предназначен для приверженности в исходных репозиториях.

Если вам не нравится иметь Package-lock.json Файл вокруг, затем продолжите читать. В противном случае вы можете перестать читать сейчас.

Отключить Package-Lock.json Локально

Вы можете сказать NPM не создавать Package-lock.json Файл для вашего текущего проекта. Для этого вам нужно создать .npmrc Файл в корне проекта и добавьте строку Package-lock = false к этому.

Пользователи Windows могут использовать:

echo package-lock=false>.npmrc
echo package-lock.json>.gitignore

Unix/Linux пользователи могут использовать:

echo 'package-lock=false' >> .npmrc
echo 'package-lock.json' >> .gitignore

Отключить Package-lock.json глобально

Вы также можете решить полностью отключить Package-lock.json Таким образом, тем самым предотвращая его созданное. Для этого вам понадобится настроить его по всему миру, набрав следующие в своем терминале:

npm config set package-lock false

Я склонен предпочитаю отключить его по всему миру, так как я не помню, как это делать для всех моих проектов. Вы выбираете метод, который работает для вас и придерживается его.

На другом примечании: я люблю иметь этот файл в моих проектах по одной конкретной причине, что это различия в версиях, и я объясню это немного. Представьте себе ситуацию, когда конкретная версия пакета была вытащена из NPM и не удается при попытке установки же. Этот недостаточный пакет не является прямой зависимостью вашего проекта, в противном случае вы могли бы просто обновить его. Это зависимость другого пакета, который использует ваш проект. Как вы найдете этот пакет? Краткий ответ: Package-lock.json Отказ

Это приводит нас к концу этой статьи, я надеюсь, что вам понравилось и узнал что-то новое. Пожалуйста, как статья, если это помогло вам или если вы узнали что-то новое. Наконец, я надеюсь, что вы не просто заключаете, чтобы исключить этот «Важный» Файл без взвешивания в его использовании.

Я на Твиттер !