Cara meningkatkan node dengan benar menggunakan nvm

231

Apakah mungkin untuk ditingkatkan node tepat di tempat, daripada menginstal versi stabil terbaru secara manual?

Saya telah menginstal node.js versi 5.0dengan nvm, tapi sekarang saya ingin update ke 5.4. Saya mencoba untuk menghindari menginstal ulang secara manual semua paket global saya ( misalnya dengan menjalankan npm install -g grunt-cli bower yo yoman-angular-generator blabla blablablabla...).

Boris Burkov
sumber

Jawaban:

328

Ini mungkin berhasil:

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

Sebagai contoh:

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

lalu, jika mau, Anda dapat menghapus versi sebelumnya dengan:

nvm uninstall OLD_VERSION

Di mana, dalam kasus Anda, NEW_VERSION = 5.4 OLD_VERSION = 5.0

Atau, coba:

nvm install stable
gabrielperales
sumber
1
dosis menggunakan nvm install stablehapus semua paket yang diinstal termasuk simpul yang diinstal dan bukan memperbaruinya?
Syed
1
sebenarnya, ini tidak lagi berfungsi. Ada masalah dengan npm: github.com/creationix/nvm/issues/811
jhuesos
5
Dengan nvm ls-remoteAnda dapat melihat semua rilis.
Daniel
7
Ini bekerja untuk saya: nvm install node --reinstall-packages-from=$(nvm current). Itu akan memperbarui Node.js ke versi terbaru dan menginstal ulang paket global npm dari apa pun versi sebelumnya.
cyfrost
Jika Anda gagal menghapus instalasi, gunakan nvm deactivatedan coba lagi.
izilotti
185

Anda dapat lebih mudah menjalankan salah satu dari perintah berikut:

Versi terbaru : Versi
nvm install node --reinstall-packages-from=node
stabil (LTS) :
nvm install lts/* --reinstall-packages-from=node

Ini akan menginstal versi yang sesuai dan menginstal ulang semua paket dari versi simpul yang saat ini digunakan. Ini menyelamatkan Anda dari penanganan versi spesifik secara manual.

Edit - perintah tambahan untuk menginstal versi LTS sesuai dengan komentar @ m4js7er.

Elad
sumber
20
Jika Anda ingin update ke versi terbaru stabil (LTS - direkomendasikan untuk sebagian besar pengguna), maka anda harus menjalankan: nvm install lts/* --reinstall-packages-from=node. Setelah itu Anda dapat membersihkan versi Anda dengan nvm uninstall [old version]. Anda dapat mendaftar semua versi yang diinstal dengan nvm ls.
m4js7er
Berpikir dua kali sebelum melakukan --reinstall-packages-from=nodeAnda dapat menggunakan lingkungan global yang berbeda untuk versi 6, 8 dan 10.
contributorpw
1
Saya terikat perintah nvm install lts/* --reinstall-packages-from=nodetetapi memberi saya kesalahan mengatakan Version 'lts/*' not found - try 'nvm ls-remote' to browse available versions.saya menggunakan NVM versi 0.30.1, mungkin NVM saya terlalu tua. Aku berakhir secara manual mengganti lts/*dengan 10.15.2/*untuk mendapatkannya untuk bekerja.
Zhang
16

DUA Solusi Sederhana:

Untuk menginstal versi terbaru dari node dan instal ulang paket versi lama cukup jalankan perintah berikut.

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

Untuk menginstal ltsversi node (dukungan jangka panjang) terbaru dan instal ulang paket versi lama cukup jalankan perintah berikut.

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

Inilah GIF untuk mendukung jawaban ini. nvm

Ahmad Awais
sumber
Tidak bisa menjalankan ini - saya baru menerimaIf --reinstall-packages-from is provided, it must point to an installed version of node.
wickywills
@wickywills "node: ini menginstal versi terbaru dari node" mungkin Anda telah dan LTS atau versi tertentu diinstal dan dengan demikian node tidak menunjuk ke versi terbaru yang diinstal. Atau Anda perlu memperbarui nvm.
iBaff
10

jika Anda memiliki 4.2 dan ingin menginstal 5.0.0 maka

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

jawaban gabrielperales benar, kecuali bahwa dia melewatkan tanda "=" di bagian akhir. jika Anda tidak menaruh tanda "=" maka versi simpul baru akan diinstal tetapi paket tidak akan diinstal.

sumber: sitepoint

Tanveer Hossain Jony
sumber
2

Node.JS untuk menginstal versi baru.

Langkah 1: Instalasi NVM

npm i -g nvm

Langkah 2: Instal NODE Versi terbaru

nvm install *.*.*(NodeVersion)

Langkah 3: Versi Node Terpilih

nvm use *.*.*(NodeVersion)

Selesai

Serkan
sumber
0

Bash alias untuk memperbarui versi aktif saat ini:

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

Bagian sed -rn "s/v([[:digit:]]+).*/\1/p"mengubah output dari nvm currentsehingga hanya versi utama dari simpul yang dikembalikan, yaitu: v13.5.0-> 13.

MrSegFaulty
sumber