Langsung ke konten utama
Versi: 7.x

pnpm install

Alias: i

pnpm install digunakan untuk menginstal semua dependensi (paket yang menjadi ketergantungan paket lain) dari sebuah proyek.

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

Di dalam workspace (ruang kerja), pnpm install akan menginstal semua dependensi di semua proyek. Jika Anda ingin menonaktifkan perilaku ini, ubah setelan recursive-install menjadi false.

RINGKASAN

PerintahArti
pnpm i --offlineHanya install secara luring melalui store
pnpm i --frozen-lockfilepnpm-lock.yaml tidak akan diperbarui
pnpm i --lockfile-onlyHanya memperbarui pnpm-lock.yaml

Options

--force

Force reinstall dependencies: refetch packages modified in store, recreate a lockfile and/or modules directory created by a non-compatible version of pnpm. Install all optionalDependencies even they don't satisfy the current environment(cpu, os, arch).

--offline

  • Default: false
  • Type: Boolean

Jika true, pnpm hanya akan menggunakan paket-paket yang sudah tersedia di store. Jika paket tidak ditemukan secara lokal, maka akan instalasi gagal.

--prefer-offline

  • Default: false
  • Type: Boolean

Jika true, pemeriksaan kedaluwarsa untuk data yang di-cache akan dilewati, tetapi data yang hilang akan diminta dari server. Untuk memaksa mode luring penuh, gunakan --offline.

--prod, -P

pnpm will not install any package listed in devDependencies and will remove those insofar they were already installed, if the NODE_ENV environment variable is set to production. Gunakan tanda ini untuk menginstruksikan pnpm supaya mengabaikan NODE_ENV dan mengambil status produksinya dari tanda ini.

--dev, -D

Only devDependencies are installed and dependencies are removed insofar they were already installed, regardless of the NODE_ENV.

--no-optional

opsionalKetergantungan tidak akan diinstal.

--lockfile-only

  • Default: false
  • Type: Boolean

Ketika digunakan, hanya akan memperbarui pnpm-lock.yaml dan package.json. Tidak akan ada yang ditulis ke direktori node_modules.

--fix-lockfile

Memperbaiki entri-entri lockfile yang rusak secara otomatis.

--frozen-lockfile

  • Asali:
    • Untuk lingkungan bukan CI: false
    • Untuk lingkungan CI: true, jika lockfile hadir
  • Type: Boolean

Jika true, pnpm tidak akan menghasilkan lockfile dan akan gagal jika lockfilenya tidak sinkron dengan manifes / butuh diperbarui atau tidak ada lockfile yang hadir.

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

Added in: v7.3.0

Merge all git branch lockfiles. Read more about git branch lockfiles.

--reporter=<name>

  • Asali:
    • Untuk stdout TTY: default
    • Untuk stdout bukan TTY: append-only
  • Tipe: default, append-only, ndjson, silent

Allows you to choose the reporter that will log debug info to the terminal about the installation progress.

  • silent - no output is logged to the console, not even fatal errors
  • default, pelapor asali ketika stdout-nya adalah TTY
  • append-only - the output is always appended to the end. Tidak ada manipulasi kursor yang dilakukan
  • ndjson, pelapor yang verbose (menampilkan keluaran yang lebih rinci). Menampilkan semua log dalam format ndjson

If you want to change what type of information is printed, use the loglevel setting.

--use-store-server

  • Default: false
  • Type: Boolean

Starts a store server in the background. The store server will keep running after installation is done. 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>

Baca lebih lanjut tentang filtering.