NVM kullanarak düğüm düzgün şekilde nasıl yükseltilir


231

nodeEn son kararlı sürümü manuel olarak yüklemek yerine, yerinde yükseltmek mümkün mü ?

Ben yüklemiş node.js sürümü 5.0ile nvm, ama şimdi bunu güncellemek istiyorum 5.4. El ile tüm global paketleri ( örneğin çalıştırarak npm install -g grunt-cli bower yo yoman-angular-generator blabla blablablabla...) yeniden yüklemek zorunda kalmamaya çalışıyorum .

Yanıtlar:


328

Bu işe yarayabilir:

nvm install NEW_VERSION --reinstall-packages-from=OLD_VERSION

Örneğin:

nvm install 6.7 --reinstall-packages-from=6.4

isterseniz, önceki sürümünüzü şu yöntemlerle silebilirsiniz:

nvm uninstall OLD_VERSION

Burada, sizin durumunuzda, NEW_VERSION = 5.4 OLD_VERSION = 5.0

Alternatif olarak şunu deneyin:

nvm install stable

1
nvm install stableyüklü düğüm de dahil olmak üzere yüklü tüm paketleri kaldırmak yerine doz güncelleme?
— Syed

1
aslında, bu artık çalışmıyor. Npm ile ilgili bir sorun var: github.com/creationix/nvm/issues/811
— jhuesos

5
Tarafından nvm ls-remotetüm sürümleri görebilirsiniz.
— Daniel

7
Bu benim için çalışıyor: nvm install node --reinstall-packages-from=$(nvm current). Bu, Node.js'yi en son sürüme güncelleyecek ve önceki sürümden ne olursa olsun npm global paketlerini yeniden yükleyecektir.
— cyfrost

Kaldırmayı başaramazsanız, kullanın nvm deactivateve tekrar deneyin.
— izilotti

185

Aşağıdaki komutlardan birini daha basit bir şekilde çalıştırabilirsiniz:

Son sürüm :
nvm install node --reinstall-packages-from=node
Kararlı (LTS) sürüm :
nvm install lts/* --reinstall-packages-from=node

Bu, uygun sürümü yükler ve geçerli olarak kullanılan düğüm sürümünden tüm paketleri yeniden yükler. Bu, belirli sürümleri elle işlemden kurtarmanızı sağlar.

Düzenle - @ m4js7er açıklamasına göre LTS sürümünü kurmak için komut eklendi.


20
Eğer son kararlı sürümü (lt - çoğu kullanıcı için önerilir) güncellemek istiyorsanız, o zaman çalıştırmalısınız: nvm install lts/* --reinstall-packages-from=node. Bundan sonra sürümlerinizi temizleyebilirsiniz nvm uninstall [old version]. Kurulu tüm sürümleri ile listeleyebilirsiniz nvm ls.
— m4js7er

Çift yapmadan önce düşünmek --reinstall-packages-from=nodeSen sürümleri 6, 8 ve 10 için farklı küresel ortamları kullanabilirsiniz
— contributorpw

1
Komutu bağladım nvm install lts/* --reinstall-packages-from=nodeama Version 'lts/*' not found - try 'nvm ls-remote' to browse available versions.NVM sürüm 0.30.1'i kullandığımı söylerken hata verdim, belki NVM'im çok eski. Ben işe almak için lts/*ile elle yerine sonunda 10.15.2/*.
— Zhang

16

⚡ İKİ Basit Çözüm:

Düğümün en son sürümünü yüklemek ve eski sürüm paketlerini yeniden yüklemek için aşağıdaki komutu çalıştırın.

nvm install node --reinstall-packages-from=node

ltsDüğümün en son sürümünü (uzun süreli destek) yüklemek ve eski sürüm paketlerini yeniden yüklemek için aşağıdaki komutu çalıştırın.

nvm install --lts /* --reinstall-packages-from=node

İşte bu yanıtı destekleyecek bir GIF . nvm


Bu işe If --reinstall-packages-from is provided, it must point to an installed version of node.
— yarayamıyorum

@wickywills "düğüm: bu, düğümün en son sürümünü yükler" olabilir ve LTS veya belirli bir sürüm yüklüdür ve bu nedenle nodeyüklü en son sürüme işaret etmez. Veya nvm'yi güncellemeniz gerekir.
— iBaff

10

4.2'niz varsa ve 5.0.0'ı yüklemek istiyorsanız

nvm install v5.0.0 --reinstall-packages-from=4.2

gabrielperales'ın cevabı, sonunda "=" işaretini kaçırması dışında haklı. "=" işaretini koymazsanız yeni düğüm sürümü yüklenir, ancak paketler yüklenmez.

Kaynak: sitepoint


2

Node.JS yeni bir sürüm yüklemek için.

Adım 1: NVM Kurulumu

npm i -g nvm

Adım 2: NODE Yeni sürüm kurulumu

nvm install *.*.*(NodeVersion)

Adım 3: Seçilen Düğüm Sürümü

nvm use *.*.*(NodeVersion)

Bitiş


0

Geçerli etkin sürümü güncellemek için Bash takma adı:

alias nodeupdate='nvm install $(nvm current | sed -rn "s/v([[:digit:]]+).*/\1/p") --reinstall-packages-from=$(nvm current)'

Parça sed -rn "s/v([[:digit:]]+).*/\1/p", çıkışı nvm currentsadece düğümün büyük bir versiyonu döndürülecek şekilde dönüştürür, yani: v13.5.0-> 13.

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.