Что означает «установка npm» при выходе из «node_modules»? - PullRequest
1 голос
/ 24 мая 2019

Каков эффект «npm install», если у вас есть каталог «package.json» и «node_modules» в каталоге проекта?

Перезаписывает ли он существующие модули?Обновляет их или вообще ничего не делает?

1 Ответ

2 голосов
/ 24 мая 2019

Из раздела Алгоритм в официальных Документах NPM :


  • загрузить существующее дерево node_modules с диска
  • клонировать дерево
  • получить пакет.json и различные метаданные и добавить их в клон
  • пройтись по клону и добавить недостающие зависимости
    • зависимости будут добавлены как можно ближе к вершине
    • без поломок других модулей
  • сравнить исходное дерево с клонированным и составить список
  • действий для преобразования одного в другое
  • выполнить все действия, сначала самые глубокие
    • виды действий: установка, обновление, удаление и перемещение

Так что нет, он не переопределяет все существующие пакеты снова.
Он выбирает все пакеты и сравнивает метаданные между деревьями пакетов и файлом пакета.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...