是否使用全局npm

时间:2013-12-22 01:32:09

标签: javascript node.js symfony

安装新模块时何时以及为何需要使用-g?

我使用symfony并且我已经为节点创建了Bundle并在bundle中安装了node_modules(例如cd ../mybundle,然后)

npm install felixge/node-mysql

何时以及为什么我必须做某事链接

npm install -g felixge/node-mysql

感谢

2 个答案:

答案 0 :(得分:3)

来自http://blog.nodejs.org/2011/03/23/npm-1-0-global-vs-local-installation/

一般来说,经验法则是:

如果您要在程序中安装要使用的东西,请使用require('whatever'),然后在项目的根目录下在本地安装。

如果您要在shell中安装要在shell中使用的东西,请在命令行或其他地方安装,以便在全局中安装它,以使其二进制文件最终位于PATH环境变量中。

答案 1 :(得分:2)

-g标志会在您的用户个人资料中安装软件包,而不会将其放在当前文件夹中。不同之处在于包装的范围。