Ответ
package-lock.json
— это файл, автоматически генерируемый npm при установке зависимостей. Он фиксирует точные версии пакетов и их зависимостей, обеспечивая воспроизводимость сборки.
Ключевые моменты:
- Записывает дерево зависимостей с точными версиями (включая вложенные)
- Игнорируется в
.npmrc
приpackage-lock=false
- Обновляется при изменении
package.json
или ручном вызовеnpm install
Пример команды:
npm ci # Чистая установка из lock-файла (быстрее и строже, чем npm install)
Отличие от npm install
:
npm install
может обновить версии вpackage-lock.json
, если диапазоны вpackage.json
разрешают этоnpm ci
строго следует lock-файлу и удаляетnode_modules
перед установкой