Chuleta de comandos npm

Chuleta de comandos npm: install, ci, update, run, semver | We.Inc

Busca todos los comandos npm de uso diario con sus flags, mira en qué se diferencia npm ci de npm install y prueba cualquier rango semver como ^1.2.3 o ~0.4 frente a una versión en tu navegador.

Chuleta de comandos npm

Los comandos npm que más vas a escribir son npm install para añadir paquetes, npm ci para instalaciones limpias en CI, npm update para avanzar dentro de tus rangos de versión, npm uninstall para quitar un paquete y npm run seguido del nombre de un script. Busca en la tabla completa de abajo y luego prueba qué permite un rango con caret o tilde.

Los cinco que necesitas primero

Las listas de comandos que hay en internet suelen quedarse en el nombre de cada comando. Esta añade los flags que la gente usa de verdad, los alias, lo que cada comando escribe en package.json y en el lockfile, y un probador de rangos para que veas qué versiones acepta realmente un caret, una tilde o un rango con x.

Preguntas frecuentes

¿Cuál es la diferencia entre npm install y npm ci?

npm install resuelve las versiones a partir de package.json, puede actualizar el lockfile y conserva el node_modules existente. npm ci necesita un lockfile, borra primero node_modules, instala exactamente lo que indica el lockfile, falla si no coincide con package.json y nunca escribe ninguno de los dos archivos.

¿npm update cambia package.json?

No por defecto. La documentación de npm indica save como false para npm update, así que solo cambian node_modules y el lockfile. Pasa --save si quieres que las nuevas versiones se escriban en package.json.

¿Qué significa el caret en ^1.2.3?

Permite cualquier cambio que mantenga igual el primer número distinto de cero empezando por la izquierda. ^1.2.3 acepta 1.x desde 1.2.3 en adelante, pero no 2.0.0. Por debajo de 1.0.0 es más estricto: ^0.2.3 solo acepta parches 0.2.x.

¿Cómo paso un flag al script que hay detrás de npm run dev?

Pon -- delante, por ejemplo npm run dev -- --port 4000. Todo lo que va después de los dos guiones llega al script en lugar de que lo lea npm.

¿Qué significan Wanted y Latest en npm outdated?

Wanted es la versión más alta que permite el rango de tu package.json. Latest es la versión que el autor del paquete etiquetó como latest en el registro. Cuando Latest es mayor que Wanted, obtenerla implica editar el rango.

Install, ci y update hacen trabajos distintos

Los scripts son atajos con unas pocas reglas

Rangos semver explicados

A qué se expande cada rango (reglas de node-semver, las que usa npm)

Scripts de package.json

Un bloque scripts típico

prebuild se ejecuta automáticamente antes de build. Los binarios locales como vite se resuelven desde node_modules/.bin.

Paso de instalación para CI

Instalación limpia y repetible, un build y luego un control de seguridad que solo falla con hallazgos graves.

Configuración

Crea un package.json con las respuestas por defecto.

Instalar

Instala todo lo que figura en package.json. Los alias incluyen npm i y npm add.

Instalar

Añade un paquete a dependencies y al lockfile; el guardado está activado por defecto.

Instalar

Guarda en devDependencies (forma larga --save-dev).

Instalar

Guarda una versión exacta en lugar de un rango con caret (--save-exact).

Instalar

Guarda en optionalDependencies (--save-optional).

Instalar

Instala sin registrarlo en package.json.

Instalar

Instala de forma global, en la carpeta prefix de npm en lugar del proyecto.

Instalar

Omite devDependencies, por ejemplo en un servidor de producción.

Instalar

Ignora los conflictos de dependencias peer como hacían las versiones antiguas de npm.

Instalar

Instalación limpia desde el lockfile: borra node_modules y nunca escribe package.json ni el lockfile. Alias npm clean-install.

Actualizar

Mueve los paquetes a las versiones más nuevas que permiten sus rangos. Alias up y upgrade.

Actualizar

Lo mismo, y además escribe las nuevas versiones en package.json.

Actualizar

Actualiza los paquetes globales a su etiqueta latest.

Actualizar

Salta a la etiqueta latest aunque cambie la versión mayor.

Actualizar

Muestra Current, Wanted y Latest de cada dependencia.

Quitar

Quita un paquete y su entrada en package.json y en el lockfile. Alias remove, rm, r, un y unlink.

Quitar

Quita los archivos pero conserva la entrada en package.json.

Quitar

Quita un paquete global.

Scripts

Lista todos los scripts de package.json.

Scripts

Ejecuta el script dev, normalmente un servidor de desarrollo.

Scripts

Pasa los flags que van después de -- al script en lugar de a npm.

Scripts

No hace nada, sin fallar, cuando el script no existe.

Scripts

Ejecuta el script start; también sirve para test, stop y restart sin run.

Scripts

Ejecuta pretest, test y posttest en orden.

Scripts

Ejecuta el binario de un paquete sin instalarlo de forma global.

Seguridad

Pide al registro las vulnerabilidades conocidas de tu árbol de dependencias.

Seguridad

Aplica las correcciones que se quedan dentro de tus rangos declarados.

Seguridad

Permite correcciones fuera de tus rangos, incluidas versiones mayores. Revisa los cambios.

Seguridad

Termina con error solo ante hallazgos altos o críticos, útil en CI.

Inspeccionar

Muestra el árbol de dependencias instalado.

Inspeccionar

Lista las versiones publicadas de un paquete.

Inspeccionar

Muestra la carpeta en la que se instalan los paquetes globales.

Workspaces

Ejecuta un script en un workspace (--workspace=a).

Workspaces

Ejecuta un script en todos los workspaces.

Buscar comandos npm

Buscar comandos

save, global, lock, script

Filtrar por grupo

Todos

Comandos y flags de npm

Comando

Grupo

Qué hace

{n} comandos mostrados

Ningún comando coincide con esa búsqueda.

Copiar

Probador de rangos semver

Rango

Versión

El rango {r} se expande a {e}, así que la versión {v} lo cumple.

El rango {r} se expande a {e}, así que la versión {v} no lo cumple.

Introduce un rango como ^1.2.3 y una versión completa como 1.4.0.

Empieza gratis · Sin tarjeta de crédito

Relacionado: Guías

Producto

Para quién es

Funciones

Recursos

Empresa

Mapa del sitio