63

I'm following examples that use the -g flag when using npm install but I can't figure out through the help system what the -g flag is doing.

tadasajon
  • 14,276
  • 29
  • 92
  • 144

3 Answers3

63

-g tells npm to install the named module so that it's accessible globally.

But it's important to understand that -g is typically only used for packages that provide command-line utilities so that their executable components are available in the system PATH.

If you have multiple programs that require the same package, each program should install the package locally. If you really want to share an installed package by installing it globally, you have to also use npm link.

See the docs on the topic of globally installed packages here.

JohnnyHK
  • 305,182
  • 66
  • 621
  • 471
15

If you do npm help install you will see that:

  o   npm install (in package directory, no arguments):

      Install the dependencies in the local node_modules folder.

      In global mode (ie, with -g or --global appended  to  the  com-
      mand), it installs the current package context (ie, the current
      working directory) as a global package.
K Z
  • 29,661
  • 8
  • 73
  • 78
  • 4
    Not that helpful to just copy-paste the help text, especially if you don't know what a global package is or how it differs from a local package. – Patrick Aug 28 '18 at 01:31
3

Take the express module as an example. If it was previously installed with the -g option, you could write express anywhere, to create a skeleton application.

Werner Kvalem Vesterås
  • 10,226
  • 5
  • 43
  • 50