Skip to content

NVM सह Node आवृत्त्या बदलणे

मूलभूत वापर

NVM वेगवेगळ्या Node.js आवृत्त्यांमध्ये बदल करण्यासाठी साधे परंतु शक्तिशाली आदेश प्रदान करते. सर्वात मूलभूत आदेश nvm use आहे, जो आपल्याला स्थापित Node.js आवृत्ती सक्रिय करण्यास अनुमती देतो.

उपलब्ध Node आवृत्त्या पाहणे

बदलण्यापूर्वी, आपण कोणत्या Node.js आवृत्त्या स्थापित केल्या आहेत हे पाहण्यासाठी nvm ls आदेश वापरू शकता.

bash
nvm ls

nvm ls

आवृत्त्या बदलण्याचे वेगवेगळे मार्ग

पूर्ण आवृत्ती क्रमांक वापरून

आपण संपूर्ण आवृत्ती क्रमांक निर्दिष्ट करू शकता:

उदाहरणार्थ, Node.js v24.0.2 वापरण्यासाठी:

bash
$ nvm use 24.0.2
आता node v24.0.2 (64-बिट) वापरत आहे

nvm ls

मुख्य आवृत्ती क्रमांक वापरून

फक्त मुख्य आवृत्ती क्रमांक निर्दिष्ट करा, आणि NVM त्या मुख्य आवृत्तीची नवीनतम स्थापित आवृत्ती वापरेल:

bash
$ nvm use 14
node v14.17.6 (npm v6.14.15) वापरत आहे

अलियास वापरून

NVM मध्ये अनेक अंगभूत विशेष अलियास आहेत:

bash
# नवीनतम स्थिर आवृत्ती वापरा
$ nvm use node
आता node v16.14.0 (npm v8.3.1) वापरत आहे

# नवीनतम LTS आवृत्ती वापरा
$ nvm use lts/*
आता node v16.13.2 (npm v8.1.2) वापरत आहे

# विशिष्ट LTS आवृत्ती वापरा
$ nvm use lts/gallium
आता node v16.13.2 (npm v8.1.2) वापरत आहे

आर्किटेक्चर निर्दिष्ट करणे (फक्त Windows)

Windows सिस्टमवर, आपण 32-बिट किंवा 64-बिट आवृत्ती वापरायची आहे की नाही हे निर्दिष्ट करू शकता:

bash
$ nvm use 14.17.0 32
$ nvm use 16.14.0 64

.nvmrc फाइल्ससह स्वयंचलित आवृत्ती बदल

आपल्या प्रकल्पाच्या रूट निर्देशिकेत Node.js आवृत्ती क्रमांक त्याची सामग्री म्हणून असलेली .nvmrc नावाची फाइल तयार करा. नंतर, फक्त nvm use आदेश (वितर्कांशिवाय) चालवा, आणि NVM .nvmrc फाइलमधून आवृत्ती वाचेल आणि त्या आवृत्तीवर स्वयंचलितपणे बदलेल.

  1. .nvmrc फाइल तयार करा:
bash
$ echo "16.14.0" > .nvmrc
  1. प्रकल्प निर्देशिकेत चालवा:
bash
$ nvm use
'/path/to/project/.nvmrc' सह आवृत्ती <16.14.0> आढळली
आता node v16.14.0 (npm v8.3.1) वापरत आहे

.nvmrc फाइल सामग्रीची उदाहरणे:

  • 16.14.0 - अचूक आवृत्ती
  • 16 - मुख्य आवृत्तीची नवीनतम आवृत्ती
  • lts/* - नवीनतम LTS आवृत्ती
  • node - नवीनतम Node.js आवृत्ती

डीफॉल्ट Node.js आवृत्ती सेट करणे

आपण डीफॉल्ट Node.js आवृत्ती सेट करू शकता जी प्रत्येक वेळी नवीन टर्मिनल उघडताना स्वयंचलितपणे वापरली जाईल:

bash
$ nvm alias default 16.14.0
default -> 16.14.0 (-> v16.14.0)

अशा प्रकारे, जरी आपण nvm use आदेश चालवला नाही, तरी निर्दिष्ट आवृत्ती डीफॉल्टनुसार वापरली जाईल.

आवृत्त्या बदलताना विचार करण्याच्या गोष्टी

जागतिक पॅकेज व्यवस्थापन

Node.js आवृत्त्या बदलताना, जागतिकरित्या स्थापित पॅकेजेस स्वयंचलितपणे स्थलांतरित होत नाहीत. प्रत्येक Node.js आवृत्तीचा स्वतःचा स्वतंत्र जागतिक पॅकेज संच असतो.

जर आपल्याला एका आवृत्तीपासून दुसऱ्या आवृत्तीमध्ये सर्व जागतिक पॅकेजेस कॉपी करायचे असतील, तर आपण वापरू शकता:

bash
# v14.17.0 पासून v16.14.0 मध्ये जागतिक पॅकेजेस कॉपी करा
$ nvm install 16.14.0 --reinstall-packages-from=14.17.0

तात्पुरते दुसरी आवृत्ती वापरत आहे

जर आपल्याला सध्याच्या सत्राची आवृत्ती बदलल्याशिवाय वेगळ्या Node.js आवृत्तीसह आदेश चालवायचा असेल, तर आपण nvm run वापरू शकता:

bash
$ nvm run 14.17.0 app.js

सध्याची आवृत्ती तपासणे

सध्या कोणती Node.js आवृत्ती वापरली जात आहे हे तपासण्यासाठी:

bash
$ nvm current
v16.14.0

सामान्य समस्या आणि उपाय

आवृत्त्या बदलल्यानंतर पर्यावरण चल गमावले

समस्या: आवृत्त्या बदलल्यानंतर, पूर्वी सेट केलेले पर्यावरण चल जसे की NODE_PATH गमावले जाऊ शकतात. उपाय: आपल्या .bashrc किंवा .zshrc फाइलमध्ये पर्यावरण चल सेटिंग्ज जोडा.

स्वयंचलित आवृत्ती बदल

जर आपल्याला प्रकल्प निर्देशिकेत प्रवेश करताना .nvmrc फाइलमध्ये निर्दिष्ट केलेल्या Node.js आवृत्तीवर स्वयंचलितपणे बदलायचे असेल, तर आपण खालील आपल्या .bashrc किंवा .zshrc मध्ये जोडू शकता:

Bash साठी:

bash
cdnvm() {
    command cd "$@" || return $?
    nvm_path="$(nvm_find_up .nvmrc | tr -d '\n')"
    
    if [ -e "$nvm_path/.nvmrc" ]; then
        declare default_version;
        default_version="$(nvm version default)"
        
        declare nvmrc_version;
        nvmrc_version="$(nvm version "$(cat "$nvm_path/.nvmrc")")"
        
        if [ "$nvmrc_version" = "N/A" ]; then
            echo "चेतावणी: $(cat "$nvm_path/.nvmrc") आवृत्ती स्थापित नाही"
        elif [ "$nvmrc_version" != "$default_version" ]; then
            nvm use > /dev/null
        fi
    fi
}
alias cd='cdnvm'

Zsh साठी:

bash
autoload -U add-zsh-hook
load-nvmrc() {
  local nvmrc_path="$(nvm_find_nvmrc)"

  if [ -n "$nvmrc_path" ]; then
    local nvmrc_node_version=$(nvm version "$(cat "${nvmrc_path}")")

    if [ "$nvmrc_node_version" = "N/A" ]; then
      nvm install
    elif [ "$nvmrc_node_version" != "$(nvm version)" ]; then
      nvm use
    fi
  elif [ -n "$(PWD=$OLDPWD nvm_find_nvmrc)" ] && [ "$(nvm version)" != "$(nvm version default)" ]; then
    echo "nvm डीफॉल्ट आवृत्तीवर परत जात आहे"
    nvm use default
  fi
}
add-zsh-hook chpwd load-nvmrc
load-nvmrc

सर्वोत्तम पद्धती

  1. प्रत्येक प्रकल्पासाठी .nvmrc फाइल तयार करा: संघ सदस्य समान Node.js आवृत्ती वापरतात याची खात्री करते
  2. LTS आवृत्त्यांमध्ये नियमित अपडेट करा: LTS आवृत्त्या अधिक स्थिर आहेत आणि उत्पादन वातावरणासाठी योग्य आहेत
  3. शब्दार्थ आवृत्ती वापरा: सुसंगतता समस्या टाळण्यासाठी .nvmrc फाइल्समध्ये अचूक आवृत्त्या निर्दिष्ट करा
  4. योग्य डीफॉल्ट आवृत्ती सेट करा: दैनंदिन विकासासाठी डीफॉल्ट Node.js आवृत्ती सेट करा

nvm use आदेश पॅरामीटर

पॅरामीटरवर्णन
<version>वापरण्यासाठी Node.js आवृत्ती निर्दिष्ट करते
nodeNode.js ची नवीनतम आवृत्ती वापरते
lts/*नवीनतम दीर्घकालीन समर्थन आवृत्ती वापरते
lts/<name>विशिष्ट दीर्घकालीन समर्थन आवृत्ती वापरते
<version> <architecture>(फक्त Windows) 32 किंवा 64-बिट आवृत्ती वापरायची आहे की नाही हे निर्दिष्ट करते

या पद्धतींसह, आपण वेगवेगळ्या प्रकल्पांच्या विकास गरजा पूर्ण करण्यासाठी वेगवेगळ्या Node.js आवृत्त्यांमध्ये सहजपणे बदलू शकता.

NVM - Windows, Linux, आणि macOS साठी Node Version Manager