2015-06-05 1 views
0

Я использую npm Node Packaged Modules для управления библиотекой проекта, Но я замечаю безоговорочный последние версия для обновления сделайте меня чертовски. (Слишком много неудовлетворенных ошибок зависимостей.)Есть ли способ автоматического изменения последней версии пакета package.json или звездочки (*) для определенной версии?

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

+0

Будет ли [--save-exact] (https://docs.npmjs.com/cli/install) помочь? – Sushil

+0

Я только что обновил свой ответ с информацией об 'npm shrinkwrap', который должен делать то, что вы ищете. –

ответ

0

Согласно NPM documentation, вы можете использовать «semver» строку, чтобы указать, как в соответствии с конкретной версии, или как то номер версии может измениться, чтобы контролировать свои зависимости следующим образом:

version Must match version exactly 
>version Must be greater than version 
>=version etc 
<version 
<=version 
~version "Approximately equivalent to version" See semver(7) 
^version "Compatible with version" See semver(7) 
1.2.x 1.2.0, 1.2.1, etc., but not 1.3.0 

Это также стоит прочитать документацию node-semver, которая более детально определяет, как указывать и управлять версиями ваших зависимостей.

Другая команда, чтобы исследовать это npm shrinkwrap - это готовит NPM-shrinkwrap.json файл (который будет использоваться npm install вместо package.json, если таковой имеется), который имеет специфические версии, записанные в нем, то есть будущее npm install " s всегда должны указывать эти конкретные версии. Дополнительную информацию см. В разделе NPM documentation for shrinkwrap.

+0

wow !, спасибо большое, – sjlee

+0

@SangJaeLee никаких проблем - если вы счастливы, что он отвечает на ваш вопрос, пожалуйста, примите ответ. –

+0

Хорошо, приятный день!, – sjlee