pnpm add <пакет>
Устанавливает пакет и все его зависимости. По умолчанию любой новый пакет устанавливается как production зависимость.
TL;DR
Команда | Обозначение |
---|---|
pnpm add sax | Сохранить в dependencies |
pnpm add -D sax | Сохранить в devDependencies |
pnpm add -O sax | Сохранить в optionalDependencies |
pnpm add -g sax | Установить глобально |
pnpm add sax@next | Установить из тега next |
pnpm add sax@3.0.0 | Указать версию 3.0.0 |
Поддерживаемые источники пакетов
Установить из npm реестра
pnpm add имя-пакета
установит последнюю версию имя-пакета
с npm реестра по умолчанию.
Если команда выполняется в рабочем пространстве (воркспейсе), она сначала попытается проверить, используют ли другие проекты в рабочем пространстве (воркспейсе) указанный пакет. Если да, то будет установлена версия из уже используемого диапазона версий.
Вы также можете устанавливать пакеты такими способами:
- тег:
pnpm add express@nightly
- версия:
pnpm add express@1.0.0
- диапазон версий:
pnpm add express@2 react@">=0.1.0 <0.2.0"
Установить из воркспейса
Обратите внимание, что при добавлении зависимостей и работе в воркспейсе, пакеты будут устанавливаться из настроенных источников, в зависимости от того, установлена ли опция link-workspace-packages
и используется ли workspace: range protocol
.
Установить из локальной файловой системы
Есть два способа установки из локальной файловой системы:
- из архива (
.tar
,.tar.gz
, или.tgz
) - из папки
Примеры:
pnpm add ./package.tar.gz
pnpm add ./some-directory
При установке из папки, будет создана символическая ссылка в node_modules
текущего проекта, поэтому это тоже самое что и запуск команды pnpm link
.
Установить из архива по ссылке
Аргументом должен быть URL-адрес, начинающийся с "http://" или "https://".
Пример:
pnpm add https://github.com/indexzero/forever/tarball/v0.5.6
Установить из Git репозитория
pnpm add <ссылка на git репозиторий>
Устанавливает пакет из удаленного провайдера Git репозитория, клонируя его с помощью git. Вы можете использовать протоколы для разных Git провайдеров. Пример для GitHub, pnpm add github:user/repo
Вы можете установить из Git используя:
- последний коммит из мастера:
pnpm add kevva/is-positive
- коммит:
pnpm add kevva/is-positive#97edff6f525f192a3f83cea1944765f769ae2678
- ветка:
pnpm add kevva/is-positive#master
- диапазон версий:
pnpm add kevva/is-positive#semver: ^ 2.0.0
You may also install just a subdirectory from a Git-hosted monorepo. For instance:
pnpm add myorg/repo#path:packages/foo
It is possible to combine multiple parameters by separating them with &
. For instance, you can extend the above command by specifying which branch to fetch from:
pnpm add myorg/repo#path:packages/foo&next
Опции
--save-prod, -P
Установить указанные пакеты как dependencies
.
--save-dev, -D
Установить указанные пакеты как devDependencies
.
--save-optional, -O
Установить указанные пакеты как optionalDependencies
.
--save-exact, -E
Сохраненные зависимости будут настроены с использованием точной версии, а не с помощью оператора диапазона semver, который используется по умолчанию.
--save-peer
Используя --save-peer
, можно добавить один или несколько пакетов к peerDependencies
и установить их как dev зависимости.
--ignore-workspace-root-check
Добавление новой зависимости к корневому пакету рабочего пространства завершается неудачно, если не используется флаг --ignore-workspace-root-check
или -w
.
Например, pnpm add debug -w
.
--global, -g
Установить пакет глобально.
--workspace
Добавляет новую зависимость, только если она найдена в воркспейсе.