¿Cómo puedo degradar un nodo o instalar una versión anterior específica usando homebrew?

Estoy usando brew. Tengo un nodo instalado, usando brew. Quiero usar una versión anterior de node.

En línea , Encuentro instrucciones como , por ejemplo :

cd /usr/local/Library/Formula brew remove node --force brew versions node git checkout 83988e4 /usr/local/Library/Formula/node.rb brew install node 

El problema que tengo con esto es que brew no parece tener un versions subcomando:

$ brew versions node Error: Unknown command: versions $ brew --version 0.9.5 

Soy nuevo en la preparación. ¿Necesito habilitar el subcomando versions de alguna manera? ¿Utilizo un subcomando diferente en su lugar? ¿Hay algún método completamente diferente que deba probar?

Estoy ejecutando OS X Yosemite (10.10.1); brew 0.9.5.

Comentarios

  • ¿Qué versión de node.js quieres instalar?
  • Mi jefe me dice 10.32. Supongo que se refiere a 0.10.32. Tengo 0.12.0 instalado en este momento.
  • En esta fecha, el lector debe ir a esta respuesta: stackoverflow.com/a/4158763/48136

Respuesta

En estos días, si desea instalar una versión diferente de node hazlo de esta manera:

Primero busca el paquete que deseas:

brew search node 

Esto podría darte la siga los resultados:

heroku/brew/heroku-node ✔ llnode node@10 nodebrew leafnode node ✔ node@8 .... 

Y luego instale la versión deseada:

brew install node@8 

También recuerde que puede instalar más de 1 paquete de nodo al mismo tiempo, pero no puede tenerlos disponibles al mismo tiempo. Entonces, si ya tiene instalado el paquete node más reciente / genérico, primero debe desvincularlo:

brew unlink node 

Y luego puede vincular una versión diferente:

brew link node@8 

Para algunas versiones de nodo más antiguas (que son solo de barril), es posible que sea necesario vincularlas con el --force y --overwrite opciones:

brew link --force --overwrite node@8 

Comentarios

  • la mejor respuesta aquí.
  • Tenga en cuenta que es posible que se le solicite » desvincular » una versión existente del nodo antes de que pueda instalar con éxito una de las otras versiones que se enumeraron (según las instrucciones anteriores). Al » desvincular «, dejará la otra versión instalada físicamente en su sistema, pero la que instale (después de la desvinculación) se convertirá en la » versión » predeterminada en su sistema. Por ejemplo, es posible que deba escribir brew unlink node si ha instalado brew install node. Luego, podría hacer brew install homebrew/versions/node4-lts (que debería ver como una versión enumerada según las instrucciones de esta respuesta).
  • En lugar de homebrew/versions/node06 es ‘ ahora homebrew/versions/node6-lts. También brew link node6-lts.
  • Yo ‘ he actualizado mi respuesta para reflejar los últimos cambios de preparación. ¡Gracias!
  • pero ¿cómo podemos instalar una versión específica como el nodo 8.2.1 usando brew?

Respuesta

Aquí está el paso a paso.

Para ver la versión actual de su nodo

$ node --version 

Para ver las versiones de nodo disponibles

$ brew search node 

Para desvincularse de la versión actual

$ brew unlink node 

Instale cualquier versión, por ejemplo, 8

$ brew install node@8 

Para vincular la versión instalada

$ brew link node@8 

Para ver su versión actual de nodo (nuevamente)

$ node --version 

Comentarios

  • Justo lo que necesitaba
  • ¿Cómo resolver este problema? brew link node @ 10 Advertencia: node @ 10 es solo para barriles y debe vincularse con –force si es necesario para tener este software primero en su RUTA, considere ejecutar: echo ‘ export PATH = » / usr / local / opt / node @ 10 / bin: $ PATH ‘ > > ~ / .bash_profile
  • ‘ t no funcionó en Mac OS 10.13.5, obteniendo el error stackoverflow.com/questions/53043476/…
  • ¿Cómo puedo instalar una versión específica del nodo? Tengo la versión del nodo de instalación » 10.17.0 » con el comando brew install node @ 10, pero necesito instalar » 10.15.3 «.
  • Responder

    A partir de este PR a homebrew / versiones y este RP a homebrew , las respuestas que involucran brew tap homebrew/versions o *-lts ya no funcionan.

    La respuesta correcta ahora es:

    brew install node@<version> 

    Donde <version> es 0.10, 0.12, 4, etc. Por ejemplo, para instalar Node.js v6 (a partir de este escritura, la versión LTS más reciente):

    brew install node@6 

    Es posible que deba ejecutar brew update antes de estos comandos para asegúrese de que estas nuevas fórmulas versionadas estén disponibles. Si tiene instalada otra versión de la fórmula node, también deberá ejecutar brew unlink node primero.

    Comentarios

    Responder

    brew versions debe instalarse en algún momento después de instalar brew.

    $ brew tap homebrew/boneyard 

    Luego puede usar el comando brew versions como asumen las instrucciones.

    Comentarios

    • homebrew/boneyard está desactualizado y se reemplazará con github.com/Homebrew/homebrew-versions como de marzo de 2015. Instale a través de brew tap homebrew/versions.
    • Con homebrew/versions obtendrá el nombre de la versión del paquete: brew search node => leafnode node node010 node04 node06 node08 nodebrew .... También

    seguido debrew link --overwrite node010para instalar la versión 0.10 de Node.JS.

  • Es posible que también necesite brew unlink node antes que brew install node010
  • Responder

    Para su información, si anteriormente tenía instalada la versión anterior y no ha «ejecutado brew cleanup (que elimina las versiones anteriores), puede cambiar con algo como brew switch node 5.7.0

    Todas las versiones instaladas de node se pueden listar ejecutando brew info node o ls -l /usr/local/Cellar/node/

    Consulte la hoja de referencia del comando brew: http://ricostacruz.com/cheatsheets/homebrew.html

    Comentarios

    • ¡Funciona a partir de 2017/12! Homebrew 1.4.0-17-gc912d26

    Respuesta

    Hay muchas respuestas aquí y en otros lugares que digamos que use versiones homebrew, pero eso le brinda opciones muy limitadas sobre qué versión de Node puede instalar.

    Es mucho más fácil usar NVM y le permite cambiar entre versiones muy fácilmente.

    homebrew install nvm 

    Luego, siga las instrucciones de las advertencias – mkdir ~/.nvm y agregue dos líneas a su .bash_profile y source .bash_profile

    Luego, simplemente ejecute nvm install <version> para todas las versiones que necesite. Luego nvm use <version> para cambiar.

    Comentarios

    • Esta no es la respuesta aceptada, pero es la única uno que funcionó para mí. Ojalá hubiera probado este primero, porque me hubiera ahorrado mucho tiempo.

    Responder

    Si lo necesita específicamente para Node, puede usar nvm . Es muy conveniente si trabaja mucho con Node.

    Comentarios

    • De acuerdo con nvm docs, brew y nvm no son un combo compatible. Comenté esto aquí. github.com/angular/angular-cli/issues/… I ‘ estaría interesado en escuchar cualquier historia de guerra sobre esto. Porque en la superficie parece que esto funciona a pesar de que ‘ s » no es compatible »

    Responder

    La forma preferida en el mundo NodeJS es usar la herramienta n

    • Instalación: npm install -g n
    • Instalar el nodo 8.8.4 n 8.8.4
    • Enumere todas sus versiones de nodo disponibles localmente y elija una: n

    Parece similar a nvm, pero tuve problemas con nvm y n funcionó fuera de la caja.

    Respuesta

    Puede hacerlo sin Homebrew.

    Puede desinstalar y luego instalar el nodo manualmente.

    Debe descargar su versión actual en ejecución. Aquí está la lista .

    Descargue el nodo-v {su-número-de-versión-actual} .tar.gz, extráigalo y luego vaya a la línea de comandos.

    cd node-v{your-current-version-number} ./configure make sudo make install 

    Para desinstalarlo sudo make uninstall

    Luego descargue el versión que desea instalar y siga los mismos pasos anteriores.

    De esta publicación de blog

    Comentarios

    • +1 en esta respuesta.FWIW, pude copiar la carpeta bin/ sin marcar en mi RUTA para que esto funcione.
    • Aún mejor, puede descargar el archivo .pkg desde allí y haga doble clic en él para instalar.

    Respuesta

    Si tuvo problemas con Homebrew para instalar cualquier versión de nodo, puede descargar el archivo .pkg para OSX desde https://nodejs.org/dist/[VERSION_YOU_NEED] . Esto solo me ayuda a reinstalar el nodo

    Respuesta

    Imaginemos que tiene la versión 0.12. *. Para instalar ( downgrade) 0.10 versión del nodo lanzar el brebaje en OSX, tienes que:

    $ sudo brew tap homebrew-versions $ brew unlink node $ brew install https://raw.githubusercontent.com/Homebrew/homebrew-versions/master/node010.rb $ node -v 

    La lista de todas las versiones del nodo es aquí

    Responder

    https://nodejs.org/en/blog/release/

    Puede ir aquí e instalar la versión que necesita.

    Antes de la instalación, es posible que desee ejecutar brew unlink node para desvincular la versión actual.

    Comentarios

    • ¿Cuál sería la ventaja de hacerlo de esta manera, en lugar de usando brew (como describen varias otras respuestas) o desinstalando el nodo y luego instalándolo manualmente (como se describe la respuesta de @ Terente-Ionut-Alexandru ‘)?
    • @ Las versiones de JohnN brew están obsoletas a partir de ahora. Sus alternativas no son muy fáciles de entender. Además, es un poco c omplex mediante brew para instalar la versión exacta.
    • La respuesta de @ Paweł-Gościcki ‘ (la mejor calificada, con 140 votos) parece muy fácil de entender, y nada complejo, que coincide con mi experiencia reciente con brebajes y diferentes versiones de fórmulas. Mi punto es que su respuesta no ‘ parece agregar algo que no ‘ no se haya dicho ya en otras respuestas, a menos que haya ‘ ¿una razón para desvincular + instalar manualmente en lugar de desinstalar + instalar manualmente, como sugirió Terente?
    • @JohnN Eso, por supuesto, es fácil de entender. Pero estará limitado por las opciones que ofrece la búsqueda de preparación. Por ej. si desea el nodo 4.4.6 exactamente, pero la preparación solo proporcionará una opción de nodo @ 4. Por lo tanto.
    • Creo que hay 3 respuestas decentes a la pregunta: (1) use brew, (2) use nvm, y (3) desinstale e instale manualmente. Lo que ‘ estoy tratando de que hagas es explicar por qué tu respuesta se suma a estas respuestas existentes. ¿Por qué cree que desvincular + instalar manualmente es preferible a las respuestas existentes? Específicamente, ¿por qué cree que * desvincular * + instalar manualmente es mejor que * desinstalar * + instalar manualmente, como sugiere la respuesta de Terente ‘?

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *