Выбор ответа Junior Пакеты и зависимости обновлено
npm ci или npm install в CI
Вопрос
Почему в CI и Dockerfile ставят зависимости через npm ci, а не npm install?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Ставит строго по lock-файлу и падает при расхождении с package.json. Цель CI: собрать ровно то, что проверено у разработчика. npm ci не меняет lock-файл и гарантирует то же дерево зависимостей. - devDependencies npm ci ставит, для их пропуска нужен --omit=dev. - Обновлять до последних версий он как раз не…
Варианты ответа
- npm ci ставит только dependencies без devDependencies
- npm ci обновляет все пакеты до последних версий, чтобы тестировать свежее
- npm ci работает без доступа к сети, из встроенного кеша
- Ставит строго по lock-файлу и падает при расхождении с package.jsonправильный ответ
Разбор
Цель CI: собрать ровно то, что проверено у разработчика. npm ci не меняет lock-файл и гарантирует то же дерево зависимостей.
- devDependencies
npm ciставит, для их пропуска нужен--omit=dev. - Обновлять до последних версий он как раз не будет.
- Сеть или кеш ему нужны, офлайн-режим тут ни при чём.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.