pnpm add <pkg>
Встановлює пакет та будь-які пакети, від яких він залежить. За замовчуванням будь-який новий пакет встановлюється як 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 registry
pnpm add package-name
встановить останню версію package-name
з npm registry за замовчуванням.
Якщо команда виконується в робочій області, команда спочатку спробує перевірити, чи інші проєкти у робочій області використовують вказаний пакет. Якщо так, буде встановлено вже використаний діапазон версій.
Ви також можете встановити пакети за:
- тегом:
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
.
Встановлення з локальної файлової системи
Існує два способи встановлення з локальної файлової системи:
- з tarball архіву (
.tar
,.tar.gz
, or.tgz
) - з каталогу
Приклади:
pnpm add ./package.tar.gz
pnpm add ./some-directory
Коли ви встановлюєте з каталогу, буде створено symlink в node_modules
поточного проєкту, тому це те саме, що запустити pnpm link
.
Встановити з віддаленого tarball архіву
Аргументом має бути URL-адреса, яка починається з "http://" або "https://".
Приклад:
pnpm add https://github.com/indexzero/forever/tarball/v0.5.6
Встановити з репозиторію Git
pnpm add <git remote url>
Встановлює модуль із віддаленого Git репозиторію, клонуючи його за допомогою Git. Ви можете використовувати протокол для певних Git провайдерів. Наприклад, 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 що використовується в pnpm за замовчуванням.
--save-peer
Використання --save-peer
додасть один або кілька пакетів до peerDependencies
та встановить їх як залежності для розробки (dev dependencies).
--ignore-workspace-root-check
Додавання нової залежності до пакета кореневого робочого простору завершиться невдачею, якщо не використовується прапорець --ignore-workspace-root-check
або -w
.
Наприклад, pnpm add debug -w
.
--global, -g
Встановлює модуль глобально.
--workspace
Додає нову залежність лише у випадку, якщо вона знаходиться в робочому просторі.