В чем разница между обновлением ng и обновлением npm?
Кто-нибудь, пожалуйста, объясните мне разницу между обновлением ng в Angular 6 и обновлением npm?
2 ответа
ng update: обновляет текущее приложение до последних версий.
Angular постоянно совершенствуется, как и сеть и вся веб-экосистема. Угловые балансировки непрерывного улучшения с упором на стабильность и упрощение обновлений. Постоянное обновление вашего приложения Angular позволяет использовать новейшие функции, а также оптимизировать и исправлять ошибки.
Этот документ содержит информацию и ресурсы, которые помогут вам поддерживать актуальность ваших приложений и библиотек Angular.
npm update: эта команда обновит все перечисленные пакеты до последней версии (указанной в теге config), с учетом semver.
Также будут установлены недостающие пакеты. Как и во всех командах, которые устанавливают пакеты, флаг --dev также приведет к обработке devDependencies.
Если указан флаг -g, эта команда обновит глобально установленные пакеты.
Если имя пакета не указано, все пакеты в указанном месте (глобальном или локальном) будут обновлены.
Начиная с npm@2.6.1, обновление npm будет проверять только пакеты верхнего уровня. Предыдущие версии npm также рекурсивно проверяли все зависимости. Чтобы получить старое поведение, используйте npm --depth 9999 update.
Начиная с npm@5.0.0, обновление npm изменит файл package.json, чтобы сохранить новую версию в качестве минимально необходимой зависимости. Чтобы получить старое поведение, используйте npm update --no-save.
источники:
https://github.com/angular/angular-cli/wiki/update
https://docs.npmjs.com/cli/update
делает больше, чем
ng update
обновит ваши зависимости (так же, как
npm update
), но в дополнение к этому он также может запускать схемы обновления: авторы библиотек могут включать такие схемы для автоматического обновления файлов вашего кода (т. е. вашего машинописного текста) в процессе обновления: т. е. они могут исправить критические изменения непосредственно в вашем коде.
Из ng-update: Разработчики библиотек :
Библиотеки несут ответственность за определение своих собственных схем обновлений. Инструмент обновления ng обновит package.json, и если он обнаружит ключ «ng-update» в package.json библиотеки, запустит на нем схему обновления (с метаданными информации о версии).
Если библиотека не определяет ключ «ng-update» в своем package.json, считается, что она не поддерживает рабочий процесс обновления, и обновление ng в основном эквивалентно установке npm.
Когда обновление будет завершено, вы
package.json
файл будет включать обновленную версию, пакеты будут установлены в
node_modules
папку, и ваш исходный код мог быть изменен файлом update-schematics. Так что сейчас самое время использовать вашу систему контроля версий, чтобы проверить изменения и протестировать ваше приложение.