pnpm install
Псевдоніми: i
pnpm install використовується для встановлення всіх залежностей проєкту.
У середовищі CI встановлення не вдається, якщо файл блокування присутній, але потребує оновлення.
У робочому просторі, pnpm install встановлює всі залежності в усіх проєктах. Якщо ви бажаєте вимкнути цю поведінку, змініть значення recursive-install на false.
TL;DR
| Команда | Значення | 
|---|---|
| pnpm i --offline | Встановити оффлайн, тільки зі сховища | 
| pnpm i --frozen-lockfile | pnpm-lock.yamlне буде змінено | 
| pnpm i --lockfile-only | Оновити тільки pnpm-lock.yaml | 
Параметри
--force
Примусове перевстановлення залежностей: перезавантаження пакунків, змінених у сховищі, перестворення файлу блокування та/або теки модулів, створених несумісною версією pnpm. Install all optionalDependencies even they don't satisfy the current environment(cpu, os, arch).
--offline
- Стандартно: false
- Тип: Boolean
Якщо true, pnpm буде використовувати тільки пакунки, які вже доступні в сховищі. Якщо пакунок не буде знайдено локально, встановлення завершиться невдачею.
--prefer-offline
- С тандартно: false
- Тип: Boolean
Якщо true, то перевірку свіжості кешованих даних буде пропущено, але дані, яких бракує буде запитано з сервера. Щоб примусово увімкнути офлайн режим, використовуйте --offline.
--prod, -P
- Стандартно:
- If NODE_ENVisproduction:true
- If NODE_ENVis notproduction:false
 
- If 
- Type: Boolean
If set, pnpm will ignore NODE_ENV and instead use this boolean value for determining the environment.
If true, pnpm will not install any package listed in devDependencies and will remove those insofar they were already installed. Якщо false, pnpm встановить усі пакунки, з devDependencies та dependencies.
--dev, -D
Only devDependencies are installed and dependencies are removed insofar they were already installed, regardless of the NODE_ENV.
--no-optional
optionalDependencies не буде встановлено.
--lockfile-only
- Стандартно: false
- Тип: Boolean
При використанні, оновлює тільки pnpm-lock.yaml і package.json. До теки node_modules нічого не буде записано.
--fix-lockfile
Автоматично виправити пошкоджені записи файлу блокування.
--frozen-lockfile
- Стандартно:
- Для не CI: false
- Для CI: true, якщо присутній файл блокування
 
- Тип: Boolean
Якщо true, pnpm не генерує файл блокування та не виконує інсталяцію, якщо файл блокування не синхронізований з маніфестом / потрібне оновлення або файл блокування відсутній.
Цей параметр стандартно дорівнює true в CI середовищах. Для виявлення середовищ CI використовується наступний код:
exports.isCI = !!(
  env.CI || // Travis CI, CircleCI, Cirrus CI, GitLab CI, Appveyor, CodeShip, dsari
  env.CONTINUOUS_INTEGRATION || // Travis CI, Cirrus CI
  env.BUILD_NUMBER || // Jenkins, TeamCity
  env.RUN_ID || // TaskCluster, dsari
  exports.name ||
  false
)
--merge-git-branch-lockfiles
Обʼєднання всіх файлів блокування гілок git. Докладніше про файли блокування гілок git.
--reporter=<name>
- Стандартно:
- Для TTY stdout: default
- Для non-TTY stdout: append-only
 
- Тип: default, append-only, ndjson, silent
Дозволяє вибрати репортера, який записуватиме у термінал налагоджувальну інформацію про хід встановлення.
- silent — у консоль не виводиться жодних даних, навіть фатальних помилок
- default — стандартний репортер, коли stdout є TTY
- append-only — результат завжди додається в кінець. Жодні маніпуляції з курсором не виконуються
- ndjson — найдокладніший репортер. Виводіть всі журнали у форматі ndjson
Якщо ви хочете змінити тип інформації, що виводиться, скористайтеся параметром loglevel.
--use-store-server
- Стандартно: false
- Тип: Boolean
Запускає сервер сховища у фоновому режимі. Сервер сховища буде продовжувати працювати після завершення встановлення. Щоб зупинити сервер сховища, виконайте pnpm server stop
--shamefully-hoist
- Стандартно: false
- Тип: Boolean
Створює пласку структуру node_modules, подібну до структури npm або yarn. ПОПЕРЕДЖЕННЯ: це вкрай не рекомендується.
--ignore-scripts
- Стандартно: false
- Тип: Boolean
Не виконувати будь-які скрипти, визначені в package.json проєкту та його залежностях.
--filter <package_selector>
Наразі фільтр не працює належним чином зі стандартною конфігурацією v8, вам потрібно неявно встановити dedupe-peer-dependents у false, щоб він працював. Для отримання додаткової інформації зверніться до #6300
Читайте більше про використання фільтрів.
--resolution-only
Added in: v8.3.0
Перезапускає вирішення: корисно для виводу проблем із прямою залежністю.