Migrasi Nodejs Menggunakan NVM | Install NVM Nodejs

Migrasi Nodejs Menggunakan NVM | Install NVM Nodejs

Proyek Nodejs sangat bergantung pada versi nodejs yang sedang dikerjakan. Paket/library nodejs juga bergantung pada versi nodejs dan sistem operasi agar bekerja dengan optimal. Akan sulit jika harus migrasi manual nodejs pada setiap proyek, Maka dari itu NVM (Node Version Management) memberikan solusi untuk migrasi versi nodejs semudah 2 perintah CMD.

# Install nodejs versi lama
➜ nvm install 16

# Menggunakan nodejs 16 di projek lama
➜ nvm use 16
Now using node v16.9.1 (npm v7.21.1)

# Periksa versi node
➜ node -v
v16.9.1

Install NVM

Pengguna sistem operasi UNIX (seperti linux, macOS, windows WSL), jalankan perintah berikut

# Khusus Unix (linux, macos, windows WSL)
➜ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

Perintah tersebut akan melakukan download file NVM, Install NVM secara otomatis dan menjadikan NVM tersedia di sistem operasi. Jika kamu ingin tahu lebih jelas mengenai instalasi NVM, periksa repository NVM untuk lebih detail.

➜ nvm -v
0.39.5

Install di Windows

Khusus windows, tim NVM sudah menyediakan NVM versi windows pada repository NVM windows. Instalasi NVM di windows juga mudah karena cukup download file exe.

Download file NVM instalasi pada halaman Release github NVM Windows. Lalu pilih file *.exe di halaman tersebut.

Lalu buka file instalasi NVM tersebut dan jalankan instalasi dengan klik "Next" pada setiap step instalasi.

Instalasi ini tidak akan membuat logo aplikasi NVM muncul di desktop atau di list aplikasi, NVM hanya bisa di akses melalui Command Prompt (CMD).

Buka CMD windows dengan menekan (Windows + R), lalu ketik "cmd" kemudian <enter>. lalu ketik nvm -v untuk periksa versi NVM yang sudah di install.

Versi NVM dan Versi Node js itu berbeda.

➜ nvm -v
0.39.5

Cara Migrasi Nodejs Menggunakan NVM

Sebagai contoh, kamu sudah install nodejs versi terbaru yaitu versi 21. Sedangkan ada proyek legacy (proyek lama) sejak tahun 2020 yang mengharuskan versi 16.

Kamu perlu migrasi nodejs menggunakan NVM, pertama-tama download terlebih dahulu nodejs versi 16 dan install di database NVM di local. Jalankan perintah nvm install 16, NVM akan install versi 16 terakhir

➜ nvm install 16 
Downloading and installing node v16.20.2...
Downloading https://nodejs.org/dist/v16.20.2/node-v16.20.2-linux-x64.tar.xz...
#################################################################################################################################################### 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v16.20.2 (npm v8.19.4)

selajutnya kamu bisa validasi instalasi ini dengan melihat list nodejs yang tersedia oleh NVM menggunakan perintah nvm list

➜ nvm list      
->     v16.20.2
       v18.12.1

Tanda arrow -> menandakan versi node js yang sedang digunakan. Secara default NVM langsung migrasi versi nodejs sesaat setelah NVM install selesai.

Untuk pindah versi nodejs lainnya, gunakan perintah nvm use

➜ nvm use 16
Now using node v16.20.2 (npm v8.19.4)

➜ node -v       
v16.20.2

Jika NVM mendeteksi versi yang di inginkan tidak tersedia di local komputer kamu, akan menampilkan pesan error seperti berikut

➜ nvm use 12
N/A: version "v12" is not yet installed.

You need to run `nvm install 12` to install and use it.

Kamu harus install versi yang di inginkan terlebih dahulu menggunakan perintah nvm install.

Dengan begini kamu sudah berhasil migrasi nodejs ke versi yang kamu inginkan. Proyek legacy sudah bisa dijalankan dengan baik.

Protip

Khusus penggunakan linux, kamu bisa menambahkan file .nvmrc untuk menyimpan versi nodejs yang digunakan pada proyek kamu.

echo "16" > .nvmrc
➜ echo "node" > .nvmrc # Menggunakan versi terbaru nodejs

Kemudian kamu cukup jalankan perintah nvm use atau nvm install tanpa angka versi nodejs, NVM akan mengambil versi yang ada di .nvmrc secara otomatis.

➜ nvm use   
Found '/proyek/path/.nvmrc' with version <16>
Now using node v16.20.2 (npm v8.19.4)

Pada windows, perintah NVM tidak secara otomatis menggunakan versi pada file .nvmrc. Berdasarkan diskusi untuk problem ini pada repository NVM windows. Hanya bisa diakali menggunakan perintah ini.

for /f usebackq %i in (`type .nvmrc`) do nvm use %i

Menggunakan NVM sangat membantu untuk developer yang menggunakan nodejs dan migrasi pada versi nodejs yang berbeda-beda. Keutamaan dari NVM dapat mengatur dan mengelola versi nodejs hingga melakukan download secara otomatis, mengambil versi yang di inginkan. Sangat disarankan untuk membaca repository NVM atau NVM windows untuk pemahaman lebih detail. Jangan lupa berikan star (bintang) pada repository tersebut untuk memberikan support kepada developer yang membuat NVM ini.