为什么每个版本的`npm`节点引脚版本?

一些问题和答案暗示有一个答案,但我不认为我在森林中看到一个答案。

由于我的IDE如何从启动程序加载$PATH ,我转而从nvm转移出来。 看起来,它不会从.nvm目录中find安装的nodenpm版本。 从/usr/local/bin加载时,IDE工作正常。 添加brew有一个nvm -lite特性,并带有brew link --force [version]

然而, brew不能做的是pipe理npm (至less非常好)。 在brew板上有一些讨论,但只有brew不需要pipe理npm

因此, brew install node给我node 7.7.2npm 4.1.2 。 都好。

但是, brew unlink node && brew link node@6给了我node 6.10.0并且离开了npm 4.1.2 。 而nodejs.orgbuild议npm 3.10.10是应该使用的npm的版本。

现在, 如果node为了某个原因固定了一个npm版本,并假设有一个很好的理由,那么是什么原因? 我什么都找不到 没有人在谈论这个关系。 这可能是我的Google Fu,但是我发现,a)没有人知道,或者b)你使用的npm版本无关紧要。 后者的推理看起来很可疑:为什么麻烦把npm一个版本绑定到node

我想我正在从nodejs或npmjs寻找一个关于npm版本“绑定”到node版本/释放的明确声明。

除了明确的声明之外,我可以在npmjs上的各行之间进行阅读:固定仅仅是为了用户的方便。

节点与npm安装,所以你应该有一个版本的NPM。 但是,npm会比Node更频繁地更新,因此您需要确保它是最新的版本。

然后继续告诉读者,运行npm install npm@latest -g

testing:运行npm -v 。 版本应该高于2.1.8。

在线之间阅读

简单地说,在node发布时,安装node会给你一个npm的版本。 npmjsbuild议在方便的时候更新npm

因此,使用npm v4.1.2运行node v6.10.10应该不成问题。 至less没有logging在案的问题。