npm shrinkwrap против установки с передачей флага —save-exact

#npm #npm-shrinkwrap

#npm #npm-shrinkwrap

Вопрос:

В чем разница между использованием npm shrinkwrap или постоянной установкой зависимостей, передающих флаг -E или --save-exact|-E ?

ie.: $ npm i redux -SE -SE является сокращением для --save --save-exact

Я думаю shrinkwrap , также позаботится о блокировке «зависимостей наших зависимостей первого уровня», но будет ли плохой практикой всегда использовать --save-exact вместо этого? Если нет, то когда или зачем нам когда-либо понадобится использовать --save-exact флаг?

Редактировать: я также начинаю видеть, что люди предлагают настроить npm для установки точных версий зависимостей по умолчанию:

ie.: $ npm config set save-exact=true

Теперь, если мы это сделаем, нужен ли нам еще shrinkwrap наш проект?

Ответ №1:

save-exact работает так, как будто просто сохраняет эту версию для вас, но она не блокирует зависимости зависимостей

shrinkwrap выполняет глубокую блокировку.