在我的Mac上,我想使用Homebrew来安装早期版本的Node和NPM - 我目前正在运行Node / NPM 8.2.1/5.3.0
,我想切换到6.11.2/3.10.10
列出的documentation。
我跑了
$ brew install node@6
$ brew unlink node
$ brew link node@ --force
虽然这似乎改变了我的节点版本 - $ node -v
- > 6.11.2
- 我的NPM版本仍然停留在5.3.0
。
如何将NPM切换到其他版本(如果需要,可以将其切换回来)?
首先尝试卸载所有节点版本:brew rm node
,之后确保node -v
和npm -v
打印command not found
。
之后安装nvm
或n
来管理节点版本。这些版本管理器有一个很大的优势,它们允许您拥有一些节点版本并可以轻松地在它们之间切换。
使用nvm:
nvm install v6.11.2
幸运的是,有一个很好的方法可以做到这一点,如果你是像我一样发现nvm过度的人,特别是如果你只需要一个版本的app / api支持(例如johnny-five)。您可以使用另一个自制的node.js install实际创建第二个“节点”版本,而不是安装节点版本管理器。
首先安装要使用的其他版本的节点,例如node @ 4,然后取消链接该版本的符号链接(您可以使用任何brew安装版本)。
$ brew install node@4 && brew unlink node@4
安装和取消链接后,转到文件夹/ usr / local / bin,并为要访问的其他版本添加自定义符号链接:
$ cd /usr/local/bin
$ ln -s ../Cellar/node\@4/4.8.5/bin/node ./node4
现在,您可以将命令节点用于先前版本,将node4用于节点@ 4版本。
当然我们不想将npm包与两个版本混合使用,所以让我们通过为node @ 4版本创建一个新的npm目录来解决这个问题:
$ mkdir ~/.npm4
$ npm config set prefix ~/.npm4
现在您已准备好为第二个版本安装全局包!每次要切换版本时,您都可以简单地交换前缀,因为我们正在寻找一个简单的过程,这可能不会经常发生。
当然,您可能需要在切换版本时不需要主动的东西,并且您可以随时在某处安装单独版本的npm并使用与节点版本相同的方式对其进行符号链接,这可能会随着时间的推移而变得混乱。它来升级npm。
其他一些选择:
所以几乎没有各种选择,但我会把这一切都留给你..