【发布时间】:2016-10-03 14:07:44
【问题描述】:
我是这里的 npm 新手,所以也许我什么都不懂。我知道 npm 可以将模块安装在项目本地的 npm_modules 目录中,或者使用 --global 可以将其安装在机器范围的位置。
除了临时方便之外,您为什么要全局安装任何软件包?例如,我看到了各种各样的 npm 配置/设置,它们会在全球范围内安装 typescript。但如果我的机器上有 5 个项目,其中 3 个使用不同版本的打字稿,那就不好了……对吧?
我的包管理经验来自 Java/Maven 世界,其中所有模块都安装在全局位置 (~/.m2/repository),但要引用任何内容(作为 cmd/tool/plugin 或作为依赖项)您需要指定版本号。因此,您可以两全其美——消除重复的软件包安装和完全可重现的构建。我原以为 npm 会以自己的方式完成同样的事情。
我错过了什么?
【问题讨论】:
-
是的,这是一种不好的做法。存储库级分期付款是首选。
-
仅供参考 - 从本地存储库运行“工具”是可行的:stackoverflow.com/questions/9679932/…
标签: npm npm-install toolchain