Как удалить приложение npm
Обновляем пакет в NPM до определенной или последней версии, а так же разбираемся как его удалить из проекта.
Оглавление
Для начала необходимо проверить наличие обновлений для пакетов, сделать это можно с помощью команды:
Данная команда выведет вам список пакетов, которые прописаны в вашем package.json и укажет текущую версию и последнюю, до которой можно обновиться.
Пакеты в NPM обновляются с помощью системы семантического версионирования и имеют как правило 3 цифры разделенные точкой.
- Major — версия, когда сделаны обратно несовместимые изменения.
- Minor — версия, когда была добавлена новая функциональность, не нарушающая обратной совместимости.
- Patch — версия, когда были сделаны обратно совместимые исправления (зачастую небольшие исправления багов).
При обновлении major версии пакета, лучше сначала проверить его работоспособность на dev версии проекта. И только после успешных тестов, обновлять на prod версии.
Обновление NPM-пакета до нужной версии
Чтобы обновить пакет до нужной версии, нужно вновь прописать команду npm i myPackageName и после добавить @packageVersion . Например:
При этом, не нужно добавлять в команду --save-dev или -D . NPM умный, он просто обновит пакет который записан в devDependencies и не перезапишет его в dependencies или наоборот.
Обновление NPM-пакета до последней версии
Если же вам не нужна определенная версия пакета, то можете просто прописать следующую команду:
Данная команда установит последнюю стабильную версию пакета. Однако вам опять стоит обратить внимание на работу пакета, если обновляете major версию.
Удаление NPM-пакета из проекта
Для того чтобы удалить NPM-пакет из проекта, нужно прописать следующую команду:
Данная команда удалит как сам пакет, так и все зависимости необходимые для его работы. Пакет будет удален как из файла package.json (из dependencies и devDependencies соответственно), так и из директории node_modules будет удалено все связанное с этим пакетом.
Благодарность автору
Если по какой-либо причине вы хотите поблагодарить автора данного ресурса, вы можете это сделать одним из удобных для вас способов ниже.
Один из самых популярных способов поблагодарить автора, воспользоваться сервисом Яндекс.Деньги.
Есть несколько способов чтобы обновить npm. Я предпочитаю:
Поиск пакетов в npm
Просмотр информации о пакете
Локальная установка пакетов
Установка пакета в наше приложение
test.js
Понимание разницы между глобальной и локальной установкой
По умолчанию npm будет устанавливать все пакеты в локальном каталоге, в которым вы сейчас работаете. Это правильно. Это может показаться немного запутанным, если вы раньше работали с предыдущими системами управления пакетами.
Например:
test.js
теперь запустим наш скрипт
мы получим эту ошибку:
Это вполне логично, мы установили http-server локально в "/mynewapp/", а не в "/anotherapp/".
Есть два решения в этой ситуации:
а) Установить ещё раз пакет, но локально в наше новое приложение
б) Установить пакет глобально
Глобальная установка пакетов
Если вы хотите чтобы пакет был доступен всем приложениям, его нужно установить глобально:
Удаление локально установленного пакета
Удаление глобально установленного пакета
Установка определённой версии пакета
Установка модуля с Github
Связи любых пакетов локально
Если у вас есть отдельный каталог содержащий пакет npm, то можно создать локальную связь для него. Это удобно в ситуациях, когда мы не хотим опубликовать наш пакет в хранилище npm.
Связи локальных пакетов для нескольких приложений
Как мы видели ранее npm устанавливает пакеты в локальный каталог по умолчанию. Так вот npm ссылка(связь) работает почти так же.
Отмена связи между пакетами приложения
(здесь мы просто отменяем наш «paste» для этого приложения)
Отмена связи пакета в системе
(здесь мы отменяем наш «copy» для этого пакета)
Создание нового пакета
(от себя хочу лишь заметить, что создание пакета не такая простая задача в одну команду, подробнее можно почитать в другой статье)
Добавление нового пользователя
Публикация пакета в репозиторий npm
Удаление пакета из репозитория npm
Управление правами доступа к пакетам в репозитории npm
Вы можете задать права доступа других пользователей к опубликованному пакету:
Одна из лучших особенностей открытого кода и экосистем современных языков программирования заключается в том, что код, который вы собираетесь написать, вероятнее всего, уже написан и готов к использованию.
Для Node.js уже написано множество пакетов, и обычно эти пакеты созданы умными и опытными людьми, которые продумали кучу вещей, о которых менее опытный разработчик мог не подумать.
В этом мануале мы обсудим работу с инструментами npm и yarn. Обе эти команды довольно популярны, вы могли сталкиваться с ними в других статьях по Node.js. Если же вы никогда не слышали о них: npm и yarn – это менеджеры пакетов для Node.js. Оба они используют файл package.json и работают очень похожим образом.
Если у вас уже есть локальная установка Node.js, вероятно, у вас установлен и npm. Если вы предпочитаете использовать yarn, но у вас нет этой команды, вы можете ознакомиться с инструкциями по установке yarn здесь.
В зависимости от вашей системы вы также можете установить эти команды с помощью вашего менеджера пакетов.
Кроме того, некоторые пакеты мы будем устанавливать глобально, а другие – как зависимость проекта. Для работы с этим мануалом можно использовать уже существующий проект или создать простой тестовый проект в каталоге /tmp, например:
$ mkdir /tmp/gator-project
$ cd /tmp/gator-project
$ npm init -y
Эти команды создают файл package.json, в который мы будем добавлять и удалять пакеты.
Добавление зависимости разработки в проект
Не все зависимости одинаковы – некоторые из них требуются только при разработке. Эти зависимости тоже важны, но в производстве они могут замедлить развертывание, поскольку для их установки требуется время.
В качестве примера зависимостей разработки можно привести утилиты тестирования типа mocha или jest. Такие пакеты мы можем установить как зависимости разработки и добавить в раздел devDependencies нашего файла package.json:
Добавление зависимостей производства в проект
Некоторые зависимости критически важны для приложения и всегда должны устанавливаться независимо от среды – и в разработке, и в производстве без них никуда. Это зависимости производства, обычно к ним относятся такие пакеты, как express или react.
Добавить зависимость производства в проект так же просто, как и зависимости разработки, но вместо devDependencies их следует помещать в раздел dependencies:
Глобальная установка зависимостей
Иногда бывает необходимо установить пакет вне текущего проекта, чтобы он был доступен для всех проектов в текущей системе. Такие пакеты устанавливаются глобально. Чаще всего они включают утилиты, которые необходимо запускать вместе с другими утилитами командной строки:
Удаление зависимости из проекта
В жизни каждого проекта наступает момент, когда зависимость, которая когда-то казалась жизненно необходимой, больше не выполняет никакой функции. В таком случае всегда лучше удалить код (при условии, что вы все хорошо протестировали и уверены, что после удаления ничего не сломается).
Чтобы удалить из проекта зависимость разработки или производства, используйте:
Это удалит пакеты из node_modules, а также уберет зависимость из package.json. Некоторые версии этих команд также показывают обновления файла.
Глобальное удаление пакета
Удаление глобально установленного пакета выполняется так же, как удаление пакета из проекта, только вы должны передать аргумент global (его же мы использовали при глобальной установке).
Я установил grunt с помощью sudo npm install grunt и я не могу удалить его.
но ей дают предупредить:
Я также попробовал rm, удалить и разорвать связь. и -g вариант, он дает:
но я все еще могу называть grunt из командной строки.
редактировать:
почему у меня есть 2 каталога с npm? Безопасно ли просто удалить его?
удалить npm модуль из проекта node_modules папку, выполните:
npm uninstall <module> --save
npm uninstall -g <module>
npm install <module>
npm install <module> --save-dev (если вы хотите добавить минимальную версию с зависимостями)
хорошие вещи, чтобы знать о грунт:
-
если вы установили grunt стабильный до 18 февраля 2013 года (день grunt v0.4.x был освобожден), у вас может быть более старый grunt версия все еще задерживается в вашей системе. Это потому что grunt версии ниже, чем глобально, что вызвало много боли при обновлении / обслуживании версий.
grunt и grunt-cli это две разные вещи.
- grunt (без "cli") обычно устанавливается на уровне проекта (если указан как devDependency на package.json ) под управлением npm install . Это также известно как локальная установка.
- grunt-cli является основой, на которой локальные версии grunt run в разных проекты/папки. Это can устанавливается локально, но более полезно при установке глобально, один раз.
grunt устанавливается только локально (с помощью команды npm install grunt ).
On npm и sudo
sudo не любит npm . Используй его, только если нужно. Ниже приведены две цитаты о достоинствах и недостатках его использовать:
цитирую Исаак З. Шлютер на введение в НПМ статьи:
я настоятельно рекомендую вам не делать управление пакетами с sudo! Пакеты могут запускать произвольные Скрипты, что делает sudoing командой диспетчера пакетов так же безопасно, как стрижка бензопилой. Конечно, это быстро и определенно собирается сократить через любые препятствия, но вы действительно можете захотеть, чтобы это препятствие оставалось там.
рекомендую делая это один раз вместо:
sudo chown -R $USER /usr/local
это устанавливает вашу учетную запись пользователя как владельца каталога / usr / local, так что вы можете просто отдавайте обычные команды. Тогда вам никогда не придется использовать sudo, когда вы установите узел или выполните команды npm.
так гораздо лучше. в конце концов, /usr/local должен быть тем, что вы установили.
Заранее заявите, что моя система MacOS.
Хорошо, начнем. Предположим, что мы хотим установить веб-пакет, тогда наш процесс установки примерно такой: подготовка среды на уровне системы, подготовка среды на уровне программного обеспечения, установка инструмента, то есть сначала установите node.js, npm, webpack-cli, наконец установите веб-пакет, установите веб-пакет -cli и webpack, обратите внимание сначала на глобальную установку, а затем на локальную установку.
Итак, наш порядок удаления: удалить локальный веб-пакет, глобально удалить веб-пакет, локально удалить webpack-cli, глобально удалить webpack-cli и удалить npm. Если вы столкнулись с проблемой и сообщили об ошибке на полпути, вы можете решить ее, где бы вы ни столкнулись.
Удалить веб-пакет локально
При локальной установке веб-пакета вы уже установили веб-пакет в локальный каталог проекта (каталог с файлом package.json в каталоге), поэтому операция удаления также должна находиться в этом каталоге проекта.
Откройте терминал, перейдите в каталог своего проекта и выполните команду:
Если после выполнения команды ошибки (пламенной ошибки) нет, удаление, как правило, проходит успешно. Затем перейдите в файл package.json в каталоге вашего проекта и посмотрите ссылку на webpack. Это ушло
Если удаление прошло успешно, элементы с красными прямоугольниками на рисунке выше исчезнут.
Удалить веб-пакет глобально
Введите cd в командной строке, чтобы выйти из каталога проекта, и мы начинаем глобально удалять webpack.
Введите команду:
Результат:
В это время введите в терминале:
Вам будет предложено без этой команды. На данный момент, удаление веб-пакета успешно.
Удалите webpack-cli локально
Процедура локального удаления аналогична. Перейдите в локальный каталог проекта и выполните команду:
После выполнения команды появится предупреждение, но это не повлияет на результат команды.
Еще раз проверьте файл package.json. Теперь ссылка на webpack-cli должна быть удалена.
Удалите webpack-cli глобально
cd Выйдите из каталога проекта и выполните команду:
Результатом выполнения команды будет предупреждение, которое можно игнорировать
Извините, я забыл сделать снимок экрана в этом месте. , ,
Ошибка, с которой я столкнулся
Когда я выполняю команду удаления, весь мозг импульсивен и логически неупорядочен. Первый - глобальное удаление webpack-cli. Эта операция очень успешна, а затем, когда я удаляю локальный webpack-cli, возникает ошибка:
Ошибка , вероятно, связана с тем, что файл события chrome-trace-event не может быть найден, но я нашел этот файл в соответствии с путем подсказки, поэтому я попытался установить файл несколько раз в проекте и установил его глобально. Много раз это не решало проблему. В конце концов я так обрадовался, что удалил этот файл и переустановил его, что решило проблему.
Суть в том, чтобы проверить друзей, после удаления любых файлов (особенно проектов компании) в каталоге проектов, пожалуйста, не забывайте следить и отправлять напрямую, что будет мешать другим. Что касается последующей операции, вы можете создать удаленные файлы для резервного копирования, или же просто и грубо, как я, вынудив выравнивание с сервером.
Вышеуказанные webpack и webpack-cli удалены. Наконец, настала очередь npm для удаления. Выполните команду:
После выполнения команды она также вернет номер версии npm, что доказывает, что наш npm не был успешно удален.
Другой способ удалить npm:
Сначала перейдите в каталог установки npm / usr / local / lib / node_modules / npm, а затем выполните следующую команду:
Результат:
Читайте также: