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
)

--reporter=<name>

  • Asali:
    • Untuk stdout TTY: default
    • Untuk stdout bukan TTY: append-only
  • Tipe: 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, 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

Memulai sebuah server penyimpanan di latar belakang. Peladen store akan tetap berjalan bahkan setelah instalasi selesai. Untuk memberhentikan peladen store, jalankan pnpm server stop

--shamefully-hoist

  • Default: false
  • Type: Boolean

Membuat struktur node_modules datar, mirip dengan npm atau yarn. PERINGATAN: Ini sangat tidak dianjurkan.

--ignore-scripts

  • Default: false
  • Type: Boolean

Jangan menjalankan skrip apapun yang terdefinisi di dalam package.json proyek dan setiap dependensinya.

--filter <package_selector>

Baca lebih lanjut tentang filtering.