He buscado en la página de módulos wiki, pero no puedo encontrar nada similar a virtualenv (python) o rvm.
¿Alguien aquí separa node.js en su propio entorno? Realmente no me gusta instalar npm en todo el sistema.
node.js
virtualenv
language-comparisons
Frangossauro
fuente
fuente

npm installpara esto.npm installreemplazado anpm bundlepartir de NPM 1.0, creo.nodeenv : entorno virtual para node.js (Analog virtualenv )
fuente
node.jsentorno se active junto con el entorno Python. Vernodeenv -p.También hay algunos sistemas de gestión de versiones de Nodo que pueden ayudar.
Echa un vistazo a Nave https://github.com/isaacs/nave
NVM también podría usarse https://github.com/creationix/nvm
También hay uno llamado n https://github.com/visionmedia/n
fuente
nvmondesea cambiar automáticamente cuando cambia de directorio, consulteavn: github.com/wbyoung/avnLa respuesta de bxjx es conceptualmente precisa. Sin embargo, tenga en cuenta que el comando de paquete ya no toma un directorio. Es siempre cae por paquetes en la
node_modulescarpeta, por lo que la NGP sabe dónde encontrarlos más tarde (y puede evitar dependencias de doble instalación).Cualquier solución probablemente implicará instalar npm y nave "en todo el sistema" (es decir, en su
PATH, que podría estar en~algún lugar), pero luego solo instalar sus dependencias específicas en el entorno virtual.Respondí más a fondo sobre el tema de github .
tl; dr: El caso de uso es válido y útil, y aunque está principalmente allí, no está tan bien servido como podría estarlo. Debemos asegurarnos de pensarlo bien y hacerlo bien.
fuente
No siempre necesita instalar dependencias globalmente. Por lo general, se recomienda porque luego puede usar los comandos que proporciona un paquete npm, pero si lo instala localmente (en el
node_modulesdirectorio), también puede usar estos comandos, solo terminan en elnode_modules/.bin/directorio, por lo que tendrá que escribirnode_modules/.bin/<command>, lo cual es molesto, pero por supuesto puede agregar esta ruta a suPATHvariable de entorno:¡Entonces puedes escribir
<command>y funciona!En realidad, hay un comando npm que devuelve una ruta absoluta al
.bindirectorio:Este comando también funciona cuando está en un subdirectorio del proyecto, devolverá el primer
node_modules/.bindirectorio que encuentre en sus directorios principales.Puede agregar este alias en su
.bashrcpara agregar automáticamente el.bin/directorio a suPATH:Entonces, cuando está en un directorio de un proyecto que tiene un
node_modules/directorio en la raíz, puede escribirnodebiny luego puede usar todos los comandos que están en el.bin/directorio.fuente
Parece que hay una mejor manera:
Instalación de Node.js y npm en un Python Virtualenv
ahora puedo usar herramientas de nodo sin ensuciar el entorno bin global
fuente
Si te gusta simple, realmente recomiendo visionmedia's n , ¡no podría ser más fácil!
https://github.com/visionmedia/n
fuente