Creo que todos hemos pasado por el problema de tener que trabajar con varias versiones de alguna herramienta, bueno eso fue lo que pasó con Node.JS , y eso me hizo escribir cómo podemos trabajar con diferentes versiones de este en la misma máquina de forma sencilla y rápida con tan solo uno o dos comandos en la terminal.
Necesitaba usar la versión 10 de Node.JS , para ser más exactos la versión 10.16.3 para hacer algunas actualizaciones a un proyecto que ya había hecho hace un tiempo.
Sin embargo, estaba usando Node.JS en la versión 13.5.0 , porque estaba probando algunas cosas nuevas que hay en esta versión, sin embargo, no vamos a hablar aquí de las novedades de cada versión de Node.JS. eso es tema para otros artículos.
Como ya habrás imaginado, tuve algunos obstáculos en ese momento, pude quitar la versión más actual e instalar la versión anterior que se usó en el proyecto, pero aún así me gustaría seguir probando algunas cosas en la nueva versión, y entonces ¿qué hacer? La respuesta es NVM .
NVM o Node Version Manager es un gestor de versiones de Node.JS , como ya se lo habrán imaginado, se encarga de gestionar las versiones instaladas en nuestra máquina de desarrollo.
NVM fue creado “instalado por el usuario e invocado por shell”, es decir, todo se hace en él usando la terminal de su sistema y tenemos algunas opciones como sh, dash, ksh, zsh, bash, que se adapta a casi todos los desarrolladores, y también se puede utilizar en sistemas Unix y macOS. También es posible utilizarlo en Windows utilizando la herramienta WSL .
Lo que realmente debemos entender es que NVM puede descargar varias versiones diferentes de Node.JS en nuestra máquina. Ahora que sabemos qué es NVM, ¡ensuciémonos las manos!
Como ya comenté, es muy sencillo usar NVM, pero primero necesitamos instalarlo en la máquina, para ello podemos usar el comando:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
Y este comando intentará agregar el siguiente contenido:
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
En nuestro archivo de usuario, que normalmente es ~/.bash_profile
, ~/.zshrc
, ~/.profile
o ~/.bashrc
, si ya está en el archivo, entonces está bien, podemos usarlo. De lo contrario, puede agregarlo manualmente. Y también puedes acceder a la documentación en la página oficial del repositorio de GitHub y allí encontrarás más opciones.
Todo listo, y luego cómo podemos usar NVM, es simple, como mencioné antes, podemos ejecutar el comando nvm ls-remote
para listar las versiones de Node.JS:
Y para descargar una versión específica , podemos usar el comando nvm install
Ahora como ya podemos tener varias versiones en nuestra máquina, nada más justo que poder listar dichas versiones , y para ello utilizamos el comando nvm ls :
Pero mi problema era que estaba usando la versión 13.5.0 y quería usar la 10.16.3, que ya descargué anteriormente, así que podemos usar el comando use v10.16.3
para activar esta versión :
Actualmente la tendencia es usar Docker, y es realmente bueno, facilita las cosas, pero podrías pensar, ¿por qué no usarlo para mantener diferentes versiones de Node.JS en la máquina? Bueno, aunque Docker facilita mucho las cosas, NVM puede facilitarlas aún más en este escenario.
Con Docker tendríamos que ejecutar un contenedor para cada versión diferente de Node.JS, aparte del tamaño de las imágenes que tendremos que descargar y dejar en nuestra máquina. Y personalmente me resulta mucho más sencillo utilizar el comando nvm ls-remote
para enumerar todas las versiones disponibles y use v13.5.0
para utilizar una versión específica, como veremos a continuación.
Qué genial es NVM, ¿no? En este artículo, entendemos qué es NVM y por qué facilita mucho la vida de los desarrolladores de Node.JS, que necesitan lidiar con diferentes versiones constantemente. Y tenemos una ganancia de productividad muy significativa.
Aquí vimos un poco sobre NVM, pero si estás aquí, es posible que te guste Formación Tu ruta completa de carrera con Node.js de Alura , así da un vistazo, estoy seguro de que te gustará y tu entorno estará listo para funcionar.
Adaptado y traducido por Daysibel Cotiz
Jonilson Sousa Soy desarrollador de software en Grupo Alura. Trabajando con las más diversas tecnologías, como Java, Python, Javascript, PHP utilizando frameworks como Spring Boot, Flask. Y me gusta ver otras tecnologías y/o marcos interesantes para divertirme.
Cursos de Programación, Front End, Data Science, Innovación y Gestión.
Luri es nuestra inteligencia artificial que resuelve dudas, da ejemplos prácticos y ayuda a profundizar aún más durante las clases. Puedes conversar con Luri hasta 100 mensajes por semana
Paga en moneda local en los siguientes países
Cursos de Programación, Front End, Data Science, Innovación y Gestión.
Luri es nuestra inteligencia artificial que resuelve dudas, da ejemplos prácticos y ayuda a profundizar aún más durante las clases. Puedes conversar con Luri hasta 100 mensajes por semana
Paga en moneda local en los siguientes países
Puedes realizar el pago de tus planes en moneda local en los siguientes países:
País | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Plan Semestral |
486.67
BOB |
69704.84
CLP |
290438.59
COP |
65.90
USD |
259.47
PEN |
1441.54
MXN |
3031.66
UYU |
65.90
USD |
533.19
GTQ |
34952.61
CRC |
4234.92
DOP |
Plan Anual |
737.76
BOB |
105667.89
CLP |
440285.52
COP |
99.90
USD |
393.34
PEN |
2185.29
MXN |
4595.79
UYU |
99.90
USD |
808.29
GTQ |
52985.83
CRC |
6419.86
DOP |
Acceso a todos
los cursos
Estudia las 24 horas,
dónde y cuándo quieras
Nuevos cursos
cada semana