pnpm install
エイリアス: i
pnpm install
はプロジェクトの全ての依存関係をインストールするのに使用されます。
CI 環境では、ロックファイルが存在しても更新が必要な場合はインストールは失敗します。
ワークスペース 内では、 pnpm install
はプロジェクトすべての依存関係をインストールします。 この動作を無効にしたい場合は、recursive-install
を false
に設定します。
概要
コマンド | 意味 |
---|---|
pnpm i --offline | ストアからのみオフラインでインストールする |
pnpm i --frozen-lockfile | pnpm-lock.yaml を更新しない |
pnpm i --lockfile-only | pnpm-lock.yaml のみ更新する |
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
- デフォルト: false
- タイプ: 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
をインストールしません。
オプション
--force
依存関係の強制再インストール: ストアで変更されたパッケージを再取得し、互換性のないバージョンの pnpm で作成されたロックファイルやモジュールディレクトリを再作成します。 現在の環境 (cpu, os, arch) に合わない場合でも、すべてのoptionalDependenciesをインストールします。
--offline
- デフォルト: false
- タイプ: Boolean
true
の場合、pnpm はストアですでに利用可能なパッケージのみを使用します。 依存パッケージがローカルで見つからない場合、インストールは失敗します。
--prefer-offline
- デフォルト: false
- タイプ: Boolean
true
の場合、キャッシュされたデータの失効チェックは省略されますが、存在しないデータはサ ーバーから要求されます。 すべてオフラインでやるように強制するには、--offline
を使用します。
--no-lockfile
Don't read or generate a pnpm-lock.yaml
file.
--lockfile-only
- デフォルト: false
- タイプ: Boolean
これを使用すると、pnpm-lock.yaml
と package.json
のみが更新されます。 node_modules
ディレクトリには書き込まれません。
--fix-lockfile
破損した lockfile の項目を自動的に修正します。
--frozen-lockfile
- デフォルト:
- CI 環境以外: false
- CI 環境: ロックファイルが存在する場合は true
- タイプ: Boolean
true
の場合、 pnpm はロックファイルを生成しません。 lockfile がマニフェストと同期しておらず、更新が必要な場合、またはロックファイルが存在しない場合は、インストールが失敗し ます。
この設定は、CI 環境ではデフォルトで true
です。 以下のコードが 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
)