Разница между npm i и npm ci в Node.js

Опубликовано: 26 Июля, 2021

Следующее различие показывает, чем команды npm i и npm ci отличаются друг от друга и их функционированием. НПМ , который называется менеджер пакетов узел , который используется для управления модулями , необходимые для нашего приложения.

npm i: npm i (или npm install) используется для установки всех зависимостей или devDependencies из файла package.json.

Синтаксис:

 npm install "имя-пакета"
// ИЛИ ЖЕ
npm я "имя-пакета"

npm ci: CI означает непрерывную интеграцию, а npm ci используется для установки всех точных зависимостей версий или devDependencies из файла package-lock.json.

Синтаксис:

над уровнем моря ты

Различия между npm i и npm ci :

S.No.

нпм я

npm ci

1. Он устанавливает пакет и все его зависимости. Обычно он используется для установки зависимостей.
2. Он может писать в package.json или package-lock.json. Он никогда не записывает в package.json или package-lock.json.
3. С помощью этой команды можно добавить индивидуальные зависимости. С помощью этой команды нельзя добавить отдельные зависимости.
4. Он медленнее в исполнении. Это быстрее в исполнении.
5. Если какая-либо зависимость отсутствует в package-lock.json, эта команда добавит ее. Если какие-либо зависимости отсутствуют или имеют несовместимые версии, то npm ci выдаст ошибку.
6. Если node_modules уже присутствует, эта команда ничего в нем не меняет. Если node_modules уже присутствует, он будет автоматически удален до того, как npm ci начнет свою установку.
7. Он может устанавливать глобальные пакеты. Он не может устанавливать глобальные пакеты.
8. Имя пакета npm i используется справа от package.json для добавления или обновления зависимостей. Его нельзя использовать для записи в package.json.
9. npm я могу использовать package-lock.json, чтобы заблокировать версию некоторых зависимостей. Он не может писать в package-lock.json.
10. Используется во время разработки после извлечения изменений, обновляющих список зависимостей. Используется для детерминированной повторяемой сборки.