Langsung ke konten utama
Versi: 9.x

pnpm install

Aliases: i

pnpm install is used to install all dependencies for a project.

Di linkungan CI, instalasi akan gagal jika sebuah lockfile hadir tetapi butuh diperbarui.

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.

RINGKASAN

PerintahArti
pnpm i --offlineHanya install secara luring melalui store
pnpm i --frozen-lockfilepnpm-lock.yaml is not updated
pnpm i --lockfile-onlyOnly pnpm-lock.yaml is updated

Pengaturan

--force

Instal ulang paksa paket dependensi: ambil ulang paket yang dimodifikasi di toko, buat ulang lockfile dan/atau direktori modul yang dibuat oleh versi pnpm yang tidak kompatibel. Install all optionalDependencies even they don't satisfy the current environment(cpu, os, arch).

--offline

  • Default: false
  • Type: Boolean

If true, pnpm will use only packages already available in the store. Jika paket tidak ditemukan secara lokal, maka akan instalasi gagal.

--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.

--prod, -P

  • Asali:
    • If NODE_ENV is production: true
    • If NODE_ENV is not production: false
  • Tipe data: 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. 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, regardless of the NODE_ENV.

--no-optional

optionalDependencies are not installed.

--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

Memperbaiki entri-entri lockfile yang rusak secara otomatis.

--frozen-lockfile

  • Asali:
    • 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. Kode berikut digunakan untuk mendeteksi enviroment CI:

https://github.com/watson/ci-info/blob/44e98cebcdf4403f162195fbcf90b1f69fc6e047/index.js#L54-L61
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

Melakukan merge ke semua file lockfile di branch git. Read more about git branch lockfiles.

--reporter=<name>

  • Asali:
    • For TTY stdout: default
    • For non-TTY stdout: append-only
  • Type: default, append-only, ndjson, silent

Memungkinkan Anda untuk memilih reporter yang akan mencatat log debug ke terminal tentang kemajuan instalasi.

  • 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. Tidak ada manipulasi kursor yang dilakukan
  • 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
danger

Deprecated feature

Memulai sebuah server penyimpanan di latar belakang. Peladen store akan tetap berjalan bahkan setelah instalasi selesai. 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>

warning

Filter currently does not work properly with v8 default config, you have to implicitly set dedupe-peer-dependents to false to have that work. For more info and progress please refer to #6300

Read more about filtering.

--resolution-only

Re-runs resolution: berguna untuk mencetak masalah dependensi peer.