Pirobits
  

Gestionando versiones de NodeJS con NVM

alberto avatar Alberto Sola · 1/23/2023 · 2 min

Cuando trabajas en el desarrollo de software y cambias entre proyectos de front o node, posiblemente necesitas cambiar entre versiones de node. Para ello NVM es la herramienta que necesitas.

La mayoría de veces instalamos node con el gestor de paquetes de nuestro sistema operativo: apt (ubuntu), brew (mac), etc.

Esto nos instala la última versión disponible en el respositorio de paquetes, que, dependiendo de la versión de nuestro sistema operativo, instalará una versión de node u otra.

Normalmente cuando trabajas en un proyecto de node, se define una versión que usan todo los desarrolladores, tanto para que las dependencias como los entornos de pruebas sean idénticos (y compatibles) entre sí.

Esto te lleva a necesitar diferentes versiones de node en una misma máquina.

NVM

Aquí es donde NVM o Node Version Manager, nos soluciona nuestro problema (repositorio en GitHub).

Este pequeño script nos permitirá tener múltiples versiones de node, con dependencias separadas, y nos permitirá cambiar entre versiones de node de forma sencilla.

Instalación

Instalarlo es sencillo. Para ello hay que ejecutar el siguiente script en una terminal:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash

Este script creará la carpeta ~/.nvm, donde almacenará todas las versiones y dependencias. Además añadirá los alias necesarios a los ficheros .bashrc, .zshrc, etc.).

Uso de nvm

Instalación de una versión de node:

nvm install <version>

Mostrar las versiones instaladas:

nvm list

Seleccionar alguna versión:

nvm use <version>

Desinstalar alguna versión:

nvm uninstall <version>

Y establecer una por defecto:

nvm alias default <version>

Fichero .nvmrc

Si definimos un fichero .nvmrc en nuestro proyecto, que contenta una versión de node (por ejemplo: 18.9.0), podremos ejecutar el comando nvm use y este automáticamente nos establecerá en la sesión de nuestra shell la versión de node necesaria (que deberás tener instalada previamente).

Si te ha resultado útil este artículo agradecería si te suscribes a mi newsletter. Recibirás contenido exclusivo de calidad y también me ayudarás enormemente. Cada suscripción apoya el trabajo que realizo y me permite conocer mejor los temas que te interesan, de forma que puedo mejorar los conocimientos que comparto contigo.


Posts recientes