Saltar al contenido principal
Version: Próxima versión

pnpm install

Alias: i

pnpm install se utiliza para instalar todas las dependencias para un proyecto.

En ambiente CI, la installación falla si el lockfile existe pero necesita ser actualizado.

Dentro de un workspace, pnpm install instala todas las dependencias en todos los proyectos. Si deseas desactivar este comportamiento, define la configuraciónrecursive-install a false.

TL;DR

ComandoSignificado
pnpm i --offlineInstala modo offline desde el almacenamiento interno
pnpm i --frozen-lockfilepnpm-lock.yaml no es actualizado
pnpm i --lockfile-onlySolo pnpm-lock.yaml es actualizado

Opciones

--force

Fuerza la reinstalación de las dependencias: recupera los paquetes modificados en la tienda, recrea un lockfile y/o un directorio de módulos creado por una versión no compatible de pnpm. Instala todas las dependencias opcionales, incluso si no satisfacen el entorno actual (cpu, os, arch).

--offline

  • Por defecto: false
  • Tipo: Boolean

Si es true, pnpm usará solo los paquetes que ya están disponibles en la tienda. Si un paquete no se encuentra localmente, la instalación fallará.

--prefer-offline

  • Por defecto: false
  • Tipo: Boolean

Si verdadero, se omitirán las comprobaciones de obsolescencia de los datos almacenados en caché, pero los datos faltantes se solicitarán al servidor. Para forzar el modo offline, usa --offline.

--prod, -P

pnpm no instalará ningún paquete listado en devDependencies y eliminará aquellos en la medida en que ya estaban instalados, si la variable de entorno NODE_ENV está configurada en producción. Utilice este parámetro para indicar a pnpm que ignore NODE_ENV y tome su estado de producción de este parámetro.

--dev, -D

Solo se instalan devDependencies y dependencies se eliminan en la medida en que ya estaban instaladas, independientemente de NODE_ENV.

--no-optional

optionalDependencies no son instaladas.

--lockfile-only

  • Por defecto: false
  • Tipo: Boolean

Cuando se usa, solo se actualiza pnpm-lock.yaml y package.json. No se escribe nada en el directorio node_modules.

--fix-lockfile

Arregla las entradas lockfile roto automaticamente.

--frozen-lockfile

  • Por defecto
    • No para CI: false
    • Para CI: true, si lockfile esta presente
  • Tipo: Boolean

Si es true, pnpm no genera un lockfile y falla al instalar si el lockfile no está sincronizado con el manifiesto / se necesita una actualización o no hay ningún lockfile presente.

Esta configuración es true de forma predeterminada en entornos de CI. El siguiente código se utiliza para detectar entornos de 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>

  • Por defecto
    • Para TTY stdout: default
    • Sin non-TTY stdout: append-only
  • Tipo: 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 se registra ninguna salida en la consola, ni siquiera errores fatales
  • default - el reporte por defecto cuando la salida stdout es TTY
  • append-only - la salida siempre se agrega al final. No se realizan manipulaciones del cursor
  • ndjson - el reporte con más detalle. Imprime todas las salidas en formato ndjson

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

--use-store-server

  • Por defecto: false
  • Tipo: 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

  • Por defecto: false
  • Tipo: Boolean

Creates a flat node_modules structure, similar to that of npm or yarn. WARNING: This is highly discouraged.

--ignore-scripts

  • Por defecto: false
  • Tipo: Boolean

Do not execute any scripts defined in the project package.json and its dependencies.

--filter <package_selector>

Leer más acerca del filtrado.

--resolution-only

Agregado en: v8.3.0

Re-runs resolution: useful for printing out peer dependency issues.