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 のみが更新される |
オプション
--force
依存関係を強制的に再インストールします。ストアで変更されたパッケージを再度フェッチし、pnpm の非互換バージョンで作成されたロックファイルや modules ディレクトリを再作成します。現在の環境(cpu、os、arch)を満たさない場合でも、すべての optionalDependencies をインストールします。
--offline
- デフォルト: false
- タイプ: Boolean
true
の場合、pnpm はストアで既に使用可能なパッケージのみを使用します。パッケージがローカルで見つからない場合、インストールは失敗します。
--prefer-offline
- デフォルト: false
- タイプ: Boolean
true
の場合、キャッシュされたデータの鮮度チェックはバイパスされますが、不足しているデータはサーバーからリクエストされます。完全なオフラインモードを強制するには、--offline
を使用します。
--prod, -P
- デフォルト
NODE_ENV
がproduction
の場合:true
NODE_ENV
がproduction
でない場合:false
- タイプ: Boolean
設定した場合、pnpm は NODE_ENV
を無視し、代わりにこのブール値を環境の決定に使用します。
true
の場合、pnpm は devDependencies
にリストされているパッケージをインストールせず、既にインストールされている場合は削除します。false
の場合、pnpm は devDependencies
と dependencies
にリストされているすべてのパッケージをインストールします。
--dev, -D
NODE_ENV
に関係なく、devDependencies
のみがインストールされ、dependencies
は既にインストールされている場合は削除されます。
--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 はロックファイルを生成せず、ロックファイルがマニフェストと同期していない場合、更新が必要な場合、またはロックファイルが存在しない場合は、インストールに失敗します。
この設定は、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
)
--merge-git-branch-lockfiles
すべての Git ブランチロックファイルをマージします。Git ブランチロックファイルの詳細はこちらをご覧ください。
--reporter=<name>
- デフォルト
- TTY stdout の場合: default
- 非 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
npm
や yarn
と同様のフラットな node_modules
構造を作成します。警告: これは強く推奨されません。
--ignore-scripts
- デフォルト: false
- タイプ: Boolean
プロジェクトの package.json
およびその依存関係で定義されたスクリプトを実行しません。
--filter <package_selector>
フィルターは現在 v8 デフォルト設定では正しく機能しません。動作させるには、dedupe-peer-dependents を false
に明示的に設定する必要があります。詳細と進捗状況については、#6300 を参照してください
--resolution-only
解決を再実行します。ピア依存関係の問題を出力するのに役立ちます。