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...).

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

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.


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


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


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


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.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.