pnpm install
Aliases: i
pnpm install is used to install all dependencies for a project.
В среде CI установка завершается неудачно, если присутствует локфайл, но требуется его обновление.
Inside a workspace, pnpm install installs all dependencies in all the
projects. If you want to disable this behavior, set the recursive-install
setting to false.
TL;DR
| Команда | Обозначение |
|---|---|
pnpm i --offline | Установить офлайн, используя только хранилище (CAS) |
pnpm i --frozen-lockfile | pnpm-lock.yaml is not updated |
pnpm i --lockfile-only | Only pnpm-lock.yaml is updated |
Options for filtering dependencies
Without a lockfile, pnpm has to create one, and it must be consistent regardless of dependencies
filtering, so running pnpm install --prod on a directory without a lockfile would still resolve the
dev dependencies, and it would error if the resolution is unsuccessful. The only exception for this rule
are link: dependencies.
Without --frozen-lockfile, pnpm will check for outdated information from file: dependencies, so
running pnpm install --prod without --frozen-lockfile on an environment where the target of file:
has been removed would error.
--prod, -P
- Default: false
- Type: Boolean
If true, pnpm will not install any package listed in devDependencies and will remove
those insofar they were already installed.
If false, pnpm will install all packages listed in devDependencies and dependencies.
--dev, -D
Only devDependencies are installed and dependencies are removed insofar they
were already installed.
--no-optional
optionalDependencies are not installed.
Опции
--force
Принудительно переустановите зависимости: обновите пакеты, измененные в хранилище, заново создайте lockfile и/или директорию модулей, созданную несовместимой версией pnpm. Установите все optionalDependencies, даже если они не соответствуют текущей среде (процессор, ОC, архитектура).
--offline
- Default: false
- Type: Boolean
If true, pnpm will use only packages already available in the store.
Если пакет не будет найден локально, установка завершится неудачно.
--prefer-offline
- Default: false
- Type: Boolean
If true, staleness checks for cached data will be bypassed, but missing data
will be requested from the server. To force full offline mode, use --offline.
--no-lockfile
Don't read or generate a pnpm-lock.yaml file.
--lockfile-only
- Default: false
- Type: Boolean
When used, only updates pnpm-lock.yaml and package.json. Nothing gets written to the node_modules directory.
--fix-lockfile
Автоматически исправить повреждённые записи в lockfile'е.
--frozen-lockfile
- По умолчанию:
- For non-CI: false
- For CI: true, if a lockfile is present
- Type: Boolean
If true, pnpm doesn't generate a lockfile and fails to install if the lockfile
is out of sync with the manifest / an update is needed or no lockfile is
present.
This setting is true by default in CI environments. Следующий код используется для обнаружения среды 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
Merge all git branch lockfiles. Read more about git branch lockfiles.
--reporter=<name>
- По умолчанию:
- For TTY stdout: default
- For non-TTY stdout: append-only
- Type: default, append-only, ndjson, silent
Позволяет выбрать репо́ртера, который будет записывать отладочную информацию в терминал о ходе установки.
- silent - no output is logged to the console, not even fatal errors
- default - the default reporter when the stdout is TTY
- append-only - the output is always appended to the end. Манипуляции с курсором не выполняются
- ndjson - the most verbose reporter. Prints all logs in ndjson format
If you want to change what type of information is printed, use the loglevel setting.
--use-store-server
- Default: false
- Type: Boolean
Deprecated feature
Запускает сервер хранилища в фоновом режиме. Сервер хранилища продолжит работу
после завершения установки. To stop the store server, run pnpm server stop
--shamefully-hoist
- Default: false
- Type: Boolean
Creates a flat node_modules structure, similar to that of npm or yarn.
WARNING: This is highly discouraged.
--ignore-scripts
- Default: false
- Type: Boolean
Do not execute any scripts defined in the project package.json and its
dependencies.
--filter <package_selector>
--resolution-only
Перезапуск распознавания: полезно для распечатки проблем с peer dependencies.
--cpu=<name>
Added in: v10.14.0
Override CPU architecture of native modules to install. Acceptable values are same as cpu field of package.json, which comes from process.arch.
--os=<name>
Added in: v10.14.0
Override OS of native modules to install. Acceptable values are same as os field of package.json, which comes from process.platform.
--libc=<name>
Added in: v10.14.0
Override libc of native modules to install. Acceptable values are same as libc field of package.json.