¿Cuándo debo usar npm con el indicador "-g" y por qué?

117

Recientemente comencé a usar npm para la administración de paquetes js. Aunque tengo una buena comprensión de la administración de paquetes en diferentes entornos (digamos usando apt, rvm / gem, pythonbrew / virtualenv / pip), no entiendo muy bien cómo encaja completamente npm.

Me gustaría saber más sobre cómo funciona la bandera "-g" y por qué debería usarla. Como en la mayoría de blogs y wiki, se refieren al uso de "-g" al instalar sin explicar por qué, y entiendo que estos paquetes se instalan globalmente.

  • Pero, ¿por qué debería instalar estos paquetes siempre globalmente?
  • ¿Qué significa instalar estos paquetes sin el indicador "-g"?
  • ¿Qué hago para instalar paquetes localmente, digamos en espacio aislado para diferentes proyectos?
  • Entonces, ¿cómo puedo hacer una lista de los paquetes npm utilizados en un proyecto y agruparlo en el proyecto si lo necesito para verificarlo con el control de versiones (si es posible)?
SuVasH .....
fuente

Respuestas:

122

-ges el indicador de instalación global , como se explica en esta respuesta . Se trata en detalle en esta publicación de blog de nodo. .

Las reglas generales:

  • Instalar globalmente si el paquete proporciona herramientas de línea de comandos
  • Instale localmente si está usando el paquete como parte de su aplicación
  • Instalar global y localmente si se aplican ambos casos de uso
cbednarski
fuente