Автор оригинала: Scott Robinson.
NPM или Manager Package NODE, является мощным инструментом, который позволяет вам легко управлять зависимостями, запускающими сценариями и организовывать метаданные проекта. Однако это главное, чтобы помочь вам загрузить и установить пакеты узлов из своего репозитория в свой проект.
Загрузка и установка пакета выполняется с использованием NPM Установить
команда:
$ npm install express + [email protected] added 50 packages from 37 contributors and audited 126 packages in 3.262s found 0 vulnerabilities
Когда вы запускаете Установить
Команда такая, по умолчанию он извлекает последнюю версию указанного пакета, которая в этом случае является V4.17.1 (во время этого письма).
Но что, если нам нужна другая версия? Может быть, эта последняя версия разбивает функцию, которую нам нужна, или, возможно, она имеет уязвимость безопасности, которую сопровождающий еще не оказался для крепления. В таких случаях, как это, вероятно, захочется установить конкретную версию пакета, которую вы знаете, или что вы знаете, является «безопасным».
Для этого мы можем указать версию, используя синтаксис NPM Установите [Пакет] @ [Версия]
Отказ Продолжая с нашим примером выше, мы бы выполнили что-то подобное:
$ npm install [email protected] + [email protected] added 48 packages from 36 contributors and audited 121 packages in 2.986s found 0 vulnerabilities
Как видите, NPM установил посылку, который мы указали.
С NPM у нас также есть другие варианты указания версии пакета. Используя либо CARET ( ^
) или Tilde ( ~
) Мы можем указать последнюю версию второстепенной или патч, соответственно. Таким образом, вы можете указать совместимую версию пакета, но все же получить новейшую.
Таким образом, например, если вы хотите использовать Express версию 4.16, но версия патча не важно, вы можете использовать Tilde, чтобы сообщить NPM для получения новейшей версии патча:
$ npm install [email protected]~4.16.1 + [email protected] added 48 packages from 36 contributors and audited 121 packages in 3.02s found 0 vulnerabilities
Так как мы префиксировали версию с ~
NPM набрал новейшую версию патча под новой версией 4.16, которая оказалась 4.16.4.
Это хорошо, когда вам не нужна очень конкретная версия, но вы хотите сохранить ваши зависимости в курсе последних исправлений исправлений и уязвимостей безопасности.
Для получения дополнительной информации проверить Caret VS Tilde в Package.json.