NodeJS sürüm numarası karışıklığı


154

Birkaç ay önce Node JS'yi kurdum ve biraz oynadım. Bugün, düğüm hakkında daha fazla bilgi edinmek istedim ve kodlamadan önce, en son sürüme sahip olduğumdan emin olmak istedim.

Sürümü kontrol ettim ve v0.10.3x gibi bir şeydi. NodeJS web sitesine baktım ve en son sürümü v4.1.0 olarak gösteriyor. Ben de Woahhh diye düşündüm! Ben daha iyi yükseltme ve sadece birkaç ay içinde hızlı bir 4.x sürümüne taşındı inanamadım.

Düğümü ve npm'i tamamen nasıl kaldıracağımı anlamaya çalışarak biraz zaman geçirdim çünkü onu yükseltemedim.

Sonunda hepsini yırttı, sonra yum kullanarak CentOS 7 üzerine yükledim. Yum yoluyla son sürümü almayacağım biliyorum ama, yeterince yakın olacağını düşündüm.

Kurulumdan sonra v0.10.40'dayım.

NodeJS sürüm numaraları hakkında bir şey anlamadığımı hissediyorum.

Birisi benim için biraz ışık tutabilir mi? Şimdiden teşekkürler.


1
Karışıklığı takdir edin, işte nodejs sürüm türleri bilgilerine bir bağlantı - github.com/nodejs/node#release-types
arcseldon

3
"Düğümü ve npm'i nasıl tamamen kaldıracağımı anlamaya çalışmak için epey zaman harcadım çünkü yükseltme yapamadım." - lütfen nvm'ye bir göz atın - github.com/creationix/nvm bu, düğüm ve npm sürümlerini kurmayı, değiştirmeyi ve kaldırmayı çok daha kolay hale getirir.
arcseldon

Yanıtlar:


209

Evet, sadece resmi node.js çalışma zamanını kullandıysanız, 0.12.x'ten 4.0.0'a kadar tek bir düşüşle atlamış gibi görünüyordu. Bilmediğiniz şey, düğüm deposunun ne kadar durgunlaştığından bıkmış olan düğüm geliştiricilerinin projenin bir çatalını yaptığını ve buna io.js olduğunu söyledi. İo.js adı altında proje son altı ay içinde ileriye doğru yürüdü; v1.x'de başladı ve o zaman 2.x ve 3.x'e kadar tekrarladı. Eski node.js, tek sürümlerin kararsız olduğu ve hatta sürümlerin kararlı olduğu farklı bir sürüm sistemi kullandı. Io.js , zaten npm'deki paketler gibi semver sürüm semantiği kullanmaya başladı.

Bir çok müzakereden sonra Joyent (orijinal node.js koruyucular) nihayet oyuna girdi ve io.js'nin zaten yaptığı gibi projeyi ileriye doğru itme çabasıyla düğüm etrafında uygun bir açık komite oluşturulmasına yardımcı oldu. Birkaç ay önce io.js'yi node.js ile birleştirmeyi kabul ettiler (ilk etapta io.js oluşturanların hedefi buydu). Sonunda iki projeyi birleştirmeyi son zamanlarda bitirdiler. İo.js adı artık yok ve node.js v4.0'da başlıyor. İo.js gibi semver anlambilimini kullanmaya devam edecek :)

Düğüm ile işleri ilerletmek ÇOK daha basit olacaktır. Projenin buradan nereye gittiğini görmek beni heyecanlandırıyor.


2
Teşekkürler! Çatal başladığında io.js ile ne olduğunun farkındaydım, ancak aktif bir düğüm geliştiricisi olmama, ne kullandığımı ve mevcut olanı anlamaya çalışırken sürüm şeması tarafından karıştırıldı.
nbering

7
Ama neden v0.12'de hala gelişme var. * (6 Mayıs 2016'da v0.12.14 sürümünü görüyorum). Bu geriye dönük uyumluluk için mi?
user276648

5
@ user276648 çünkü 0.12 bir LTS (Uzun Süreli Destek) sürümüdür ve güvenlik düzeltmeleri vb. gibi önemli yamaları yayınlamaya devam ederler. Yalnızca yama numarasının arttığını görürsünüz. 0.12.x
Chev

3
İlgilenen varsa LTS bilgisi. github.com/nodejs/LTS
Chev

1
Belki daha önce bir felaket diyebilirsiniz, ancak sürümler şimdi oldukça düzenli ve yeni LTS yapısı içiniz rahat olsun. Her şey şimdi Ubuntu sürümlerine çok benziyor (sadece daha hızlı hareket ediyor) ve bundan oldukça memnunum. Semver düğüm için en anlamlı olanıdır.
Chev

4

Çünkü v4.0'dan beri Node.js projesi ve io.js projesi birleştiriliyor. İo.js projesine gelince, sürüm numaraları v3.x, v2.x ve v1.x gibiydi.

Referans https://nodejs.org/en/blog/release/v4.0.0/


2
Çok zayıf bir açıklama. OP'nin io / düğüm durumunu bildiğini ve bir acemi için herhangi bir karışıklığı ortadan kaldırmak yerine eklediğini varsayar.
a20


2

Eğer npm kullanırsanız,

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

bir kere bittiğinde node -vne olduğunu görmeye çalış

http://davidwalsh.name/upgrade-nodejs adresinde daha fazlasını görün


3
Nasıl yükseltileceğini sormuyordu, 0.x serisi sürüm numaralarına karşı 4.x serisi sürüm numaralarını soruyordu.
a20

4
Kesinlikle OP sorusunun cevabı değil, sadece aradığım şey!
ngoue

0

Komut satırını kullanarak düğümü veya npm'yi güncelleyebilirsiniz. Makinenizde bir düğüm veya npm sürümünün yüklü olması gerekir. Terminalinizde aşağıdaki komutu kullanın.

npm install node -g
npm install npm

Düğümün belirli bir sürümünü de yükleyebilirsiniz, Bunun gibi.

npm install node@8.1.3 
npm install npm@4.1.2

Burada 8.1.3 bir sürüm numarasıdır. Yüklemek istediğiniz sürümlerden birini kullanın.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.