NodeJS版本号混乱


154

几个月前,我安装了Node JS,并玩了一些。今天,我想开始学习有关节点的更多信息,并且在编码之前,我决定要确保自己具有最新版本。

我检查了版本,它就像v0.10.3x。我查看了NodeJS网站,它显示的最新版本为v4.1.0。所以我以为哇!我最好升级一下,我简直不敢相信它在短短几个月内就迅速升级到了4.x版本。

我花了很多时间试图弄清楚如何完全卸载node和npm,因为我似乎无法升级它。

最终我把所有东西都撕了,然后使用yum安装在CentOS 7上。我知道我不会通过yum获得最新版本,但我认为它已经足够接近了。

安装后,我在v0.10.40。

我有一种感觉,就是我对NodeJS版本号一无所知。

有人可以帮我一下吗?提前致谢。


1
感谢您的混淆,这里是指向nodejs版本类型信息的链接-github.com/nodejs/node#release-types
arcseldon 2015年

3
“我花了很多时间试图找出如何完全卸载node和npm的方法,因为我似乎无法对其进行升级。” -请查看nvm-github.com/creationix/nvm, 这使安装,更改和卸载node和npm的版本更加容易。
arcseldon 2015年

Answers:


209

是的,如果您只使用官方的node.js运行时,那么它似乎会从0.12.x一直跳到4.0.0。您可能不知道的是,那些对节点存储库停滞了多少感到厌烦的节点开发人员将这个项目称为io.js。在过去的六个月左右的时间里,该项目以io.js的名义前进。它始于v1.x,并一直迭代到2.x和3.x。旧的node.js使用不同的版本控制系统,其中奇数版本不稳定,偶数版本稳定。io.js切换到使用semver版本控制语义,例如npm上的软件包已在使用。

经过大量协商,Joyent(node.js的原始维护者)终于屈服了,并帮助围绕node成立了一个合适的开放委员会,以与io.js一样的方式推动该项目的进行。几个月前,他们同意将io.js合并回node.js(这是最初创建io.js的人的目标)。他们终于在最近完成了两个项目的合并。io.js的名称已不再存在,node.js的生命力始于v4.0。它将像io.js一样继续使用semver语义:)

用node前进会更简单。我很高兴看到项目从这里开始。


2
谢谢!我知道io.js在启动分叉时发生了什么,但不是一个活跃的节点开发人员,当试图弄清楚我使用的是什么与可用的东西时,版本分裂使它感到困惑。
nbering

7
但是为什么v0.12。*仍会有发展(我看到v0.12.14在2016年5月6日发布)。这是为了向后兼容吗?
user276648 '16

5
@ user276648,因为0.12是LTS(长期支持)版本,它们将继续发布重要的补丁程序,例如安全修补程序等。您只会看到补丁程序数量增加。0.12.x
Chev

3
如果有人感兴趣,这是LTS信息。github.com/nodejs/LTS
CHEV

1
也许您以前可以说是一场灾难,但是现在发布已经很正常了,新的LTS结构让您安心。一切工作都与现在的Ubuntu版本非常相似(只是移动速度更快),我对此非常满意。Semver对节点最有意义。
2016年



2

如果您使用npm,则可以升级

sudo npm cache clean -f
sudo npm install -g n
sudo n stable

一旦完成尝试node -v看看你得到了什么

http://davidwalsh.name/upgrade-nodejs上查看更多信息


3
他不是在问如何升级,而是在问0.x系列版本号与4.x系列版本号。
2015年

4
绝对不是OP的问题的答案,而是我所寻找的!
ngoue

0

您可以使用命令行更新节点或npm。您需要在计算机中安装节点或npm版本。在您的终端中使用以下命令。

npm install node -g
npm install npm

您也可以像这样安装特定版本的节点。

npm install node@8.1.3 
npm install npm@4.1.2

8.1.3是版本号。使用您要安装的任何版本。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.