https://habrahabr.ru/post/350762/С сегодняшнего дня все пользователи npm могут использовать преимущество новой команды установки, называемой «npm ci». Команда предоставляет массивные улучшения в производительности и надёжности сборок для процессов непрерывной интеграции и непрерывного деплоя, предоставляя последовательный и быстрый опыт для разработчиков, использующих CI/CD в своей работе.
Что это за ботва такая?
npm ci игнорирует package.json пакета и устанавливает модули руководствуясь локфайлом (package-lock.json). Это позволяет создавать воспроизводимые сборки: вы получаете именно то, что ожидаете при каждой установке.
Ранее, разработчики, которые желали получить синхронизированные node_mobules и package.json, архивировали свою папку node_modules. npm ci заменяет этот процесс единственной командой.
Почему?
Это быстро.
npm ci быстрый — в некоторых случаях, в два раза быстрее npm i. Он предоставляет значительное увеличение производительности для всех разработчиков, использующих непрерывную интеграцию.
Эти увеличенные скорость и надежность сокращают время и способствуют лучшим практикам разработки. Это быстрее и проще для запуска тестов, разработчики могут запускать их чаще и активнее перехватывать ошибки.
npm ci обещает, что наибольшее преимущество получат большие команды. Возможность давать разработчикам «подписываться» на файл блокировки способствует более эффективной совместной работе в больших командах, и возможность установки именно того, что описано в файле блокировки, потенциально может сохранить десятки, если не тысячи, рабочих часов в месяц, позволяя командам тратить больше своего времени на создание и поддержку прекрасных вещей.
Это увеличивает надёжность
npm ci также предоставляет дополнительные варианты улучшения надёжности билдов вашего приложения. Как дополнительная инсталляционная команда, npm ci может быть использована для возвращения к изначальному состоянию, если npm i завершился с ошибкой, и наоборот. Это значительно снижает вероятность неудачной установки.
Как?
npm ci доступен сразу же после обновления на самую последнюю версию npm: выполните npm install -g npm@latest. Для б
ольших подробностей о релизе обратитесь к
логу изменений.
Что вы думаете?
Мы желаем знать как это работает для вас в том числе. Вопросы? Результаты? Хотите поделиться тем, что вы и ваша команда создали?
Пишите нам.