Как обновить конкретную версию подпакета с помощью npm

1

Я проверил глобальную минимизацию пакетов для глотки

$ npm list -g minimatch

+-- [email protected]
| '-- [email protected]
|   +-- [email protected]
|   | +-- [email protected]
|   | | '-- [email protected]  deduped
|   | '-- [email protected]
|   '-- [email protected]
|     '-- [email protected]
|       '-- [email protected]
|         +-- [email protected]
|         | '-- [email protected]  deduped
|         '-- [email protected]

Теперь я хотел обновить все версии минимизации от конкретного пакета gulp (все [email protected] и [email protected]) до последней версии.

Является ли их любая команда в npm, которая обновляет мои существующие зависимостей пакета?

Теги:
gulp
npm
minimatch

1 ответ

1

Вы не можете и не должны обновлять подпакеты (пакеты, используемые в качестве зависимостей для других пакетов).

Модули узла предназначены для хранения всех зависимостей с указанными версиями внутри node_modules, чтобы избежать проблем с новыми обновлениями. Скажем, ваш [email protected] вводит некоторые новые функции, теперь [email protected] может перестать работать, а в свою очередь [email protected] может перестать работать.

Вы должны:

Обновление до нового gulp версии, не беспокоясь о minimatch

npm update gulp

или использовать последнюю версию minimatch напрямую, используя

npm install minimatch

Если вы действительно хотите выполнить операцию по любой причине, вы можете попробовать следующий уродливый взломать:

  • установить минимализацию где-нибудь в случайном месте с npm install [email protected]
  • перейдите в папку node_modules в этом месте и скопируйте папку с minimatch
  • найдите свою папку установки gulp (это может зависеть от вашей системы, C:\Users\user\AppData\Roaming\npm\node_modules\gulp в Windows или /usr/lib/node_modules/gulp/ на Linux)
  • поиск minimatch внутри gulp папки установки (find. | grep minimatch)
  • замените все найденные папки с minimatch на тот, который вы только что установили в случайном месте

На этом этапе gulp должен использовать обновленную minimatch, хотя в npm list будет отображаться старый номер версии.
Опять же, это настоятельно не рекомендуется и предоставляется только для ответа на вопрос.

  • 0
    Это я знаю, но вопрос в том, что я хотел обновить один из моих локальных глобальных пакетов. мне все равно, если это сломает его, как я могу это сделать?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню