Passa al contenuto principale
Versione: 7.x

pnpm install

Alias: i

pnpm install viene utilizzato per installare tutte le dipendenze di un progetto.

In un ambiente CI, l'installazione fallisce se un lockfile è presente ma necessita di un aggiornamento.

All'interno di uno spazio di lavoro, pnpm install installa tutte le dipendenze in tutti i progetti. Se vuoi disabilitare questo comportamento, imposta l'opzione recursive-install a false.

TL;DR

ComandoSignificato
pnpm i --offlineInstalla offline solo dall'archivio
pnpm i --frozen-lockfilepnpm-lock.yaml non viene aggiornato
pnpm i --lockfile-onlySolo pnpm-lock.yaml viene aggiornato

Opzioni

--offline

  • Predefinito: false
  • Tipo: Booleano

Se true, pnpm utilizzerà solo i pacchetti già disponibili nell'archivio. Se un pacchetto non verrà trovato localmente, l'installazione fallirà.

--prefer-offline

  • Predefinito: false
  • Tipo: Booleano

Se true, i controlli di obsolescenza per i dati memorizzati nella cache verranno ignorati, ma i dati mancanti verranno richiesti dal server. Per forzare la modalità offline completa, utilizzare --offline.

--prod, -P

pnpm non installerà alcun pacchetto elencato nelle dipendenze di sviluppo (devDependencies) se la variabile di ambiente NODE_ENV è impostata su produzione. Utilizzare questo flag per indicare a pnpm di ignorare NODE_ENV e prendere invece lo stato di produzione da questo flag.

--dev, -D

Solo le dipendenze di sviluppo (devDependencies) vengono installate indipendentemente da NODE_ENV.

--no-optional

Le dipendenze opzionali (optionalDependencies) non vengono installate.

--lockfile-only

  • Predefinito: false
  • Tipo: Booleano

Se utilizzato, aggiorna solo pnpm-lock.yaml e package.json. Non viene scritto nulla nella cartella node_modules.

--fix-lockfile

Correggi automaticamente le voci del file di blocco non funzionanti.

--frozen-lockfile

  • Predefinito:
    • Per non CI: false
    • Per CI: true, se è presente un lockfile
  • Tipo: Booleano

Se true, pnpm non genera un lockfile e l'installazione fallisce se il lockfile è fuori sincronizzazione con il manifesto / un aggiornamento è necessario o nessun lockfile è presente.

Questa impostazione è true per impostazione predefinita in ambienti CI. Il codice seguente viene utilizzato per rilevare gli ambienti 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=<nome>

  • Predefinito:
    • Per TTY stdout: default
    • Per stdout non TTY: append-only
  • Type: default, append-only, ndjson, silent

Consente di scegliere il segnalatore che registrerà le informazioni di debug al terminale circa l'avanzamento dell'installazione.

  • silent - nessun output viene registrato nella console, ad eccezione degli errori fatali
  • default - il segnalatore predefinito quando lo stdout è TTY
  • append-only (Aggiunto nella versione v1.29.1) - l'output viene sempre aggiunto alla fine. Non vengono eseguite manipolazioni del cursore
  • ndjson - il segnalatore più verboso. Stampa tutti i log nel formato ndjson

--use-store-server

  • Predefinito: false
  • Tipo: Booleano

Avvia un server di archiviazione in background. Il server di archiviazione continuerà a funzionare al termine dell'installazione. Per arrestare il server di archiviazione, eseguire pnpm server stop

--shamefully-hoist

  • Predefinito: false
  • Tipo: Booleano

Crea una struttura flat di node_modules, simile a quella di npm o yarn. ATTENZIONE: Questo è altamente sconsigliato.

--filter <selettore_pacchetto>

Ulteriori informazioni sui filtri.