nvmrc ని కాన్ఫిగర్ చేయడం
పరిచయం
బహుళ ప్రాజెక్ట్లను అభివృద్ధి చేస్తున్నప్పుడు, ప్రతి ప్రాజెక్ట్కు విభిన్న Node.js వెర్షన్ అవసరం కావచ్చు. అటువంటి సందర్భాలలో, వెర్షన్లను ఇన్స్టాల్ చేయడానికి మరియు మార్చడానికి టెర్మినల్లో nvm install మరియు nvm use కమాండ్లను అమలు చేయడం ద్వారా ప్రతి ప్రాజెక్ట్ కోసం Node.js వెర్షన్ను నిర్దేశించాలి.
అయితే, ప్రతిసారీ టెర్మినల్లో కమాండ్లను మాన్యువల్గా అమలు చేయడం ఇబ్బందికరంగా మారుతుంది, ముఖ్యంగా ప్రాజెక్ట్ల సంఖ్య పెరిగేకొద్దీ. వెర్షన్లను మార్చడం మర్చిపోవడం లేదా తప్పు వెర్షన్కు మారడం సులభం, ఇది ప్రాజెక్ట్లు ప్రారంభం కాకపోవడానికి లేదా రన్టైమ్ సమయంలో లోపాలను ఎదుర్కొనడానికి కారణమవుతుంది.
ఇక్కడే మనకు Node.js వెర్షన్లను నిర్వహించడానికి మరియు వాటి మధ్య స్వయంచాలకంగా మారడానికి ఒక పద్ధతి అవసరం, మరియు ఇక్కడే .nvmrc పనికి వస్తుంది.
.nvmrc అంటే ఏమిటి?
పై వివరణ నుండి, .nvmrc ఫైల్ మా ప్రాజెక్ట్ కోసం Node.js వెర్షన్ను నిర్వహించడానికి ఉపయోగించబడుతుందని మీరు అర్థం చేసుకోవచ్చు. ఈ ఫైల్ చాలా సరళమైనది: ఇది nvm గుర్తించగల Node.js వెర్షన్ను సూచించే టెక్స్ట్ను మాత్రమే కలిగి ఉంటుంది, ఉదాహరణకు v18.12.0.
.nvmrc ఫైల్ను ఎలా ఉపయోగించాలి?
మీరు Node.js వెర్షన్ సంఖ్య లేదా nvm అర్థం చేసుకునే ఇతర టెక్స్ట్ను కంటెంట్గా కలిగి ఉన్న .nvmrc ఫైల్ను సృష్టించవచ్చు. వివరాల కోసం, మీరు టెర్మినల్లో nvm --help ని టైప్ చేయవచ్చు.
.nvmrc ఫైల్తో, మీరు టెర్మినల్లో వెర్షన్ను నిర్దేశించకుండా nvm use, nvm install, nvm exec, nvm run, మరియు nvm which వంటి కమాండ్లను అమలు చేసినప్పుడు, .nvmrc ఫైల్లో నిర్దేశించిన వెర్షన్ ఉపయోగించబడుతుంది.
.nvmrc ఫైల్ను సృష్టించడం
ఉదాహరణకు, ప్రస్తుత డైరెక్టరీలో, nvm 18.12 వెర్షన్ యొక్క తాజా రిలీజ్, తాజా LTS వెర్షన్, లేదా తాజా Node.js వెర్షన్ను నిర్దేశించడానికి, మీరు .nvmrc ఫైల్ను సృష్టించడానికి echo కమాండ్ను ఉపయోగించవచ్చు:
bash
$ echo "18.12" > .nvmrc
# తాజా LTS వెర్షన్కు సెట్ చేయండి
$ echo "lts/*" > .nvmrc
# తాజా వెర్షన్కు సెట్ చేయండి
$ echo "node" > .nvmrcnvm use వంటి కమాండ్లు .nvmrc ఫైల్ను వెతుకుతూ ప్రస్తుత డైరెక్టరీ నుండి డైరెక్టరీ నిర్మాణాన్ని పైకి దాటుతాయి. దీని అర్థం .nvmrc ఫైల్తో డైరెక్టరీ యొక్క ఏదైనా ఉపడైరెక్టరీలో nvm use వంటి కమాండ్లను అమలు చేయడం ఇప్పటికీ ఆ .nvmrc ఫైల్ను ఉపయోగిస్తుంది.
.nvmrc ఫైల్ nvm --help లో జాబితా చేయబడిన వాటికి అనుగుణంగా ఉన్న <version> ని కలిగి ఉండాలి, తర్వాత కొత్త లైన్. ట్రైలింగ్ స్పేస్లు అనుమతించబడవు, మరియు ట్రైలింగ్ కొత్త లైన్ అవసరం.
క్రింద చూపిన చిత్రంలో, v14.21.3 తర్వాత స్పేస్ లేదు, కేవలం లైన్ బ్రేక్.

షెల్ టెర్మినల్లతో లోతైన ఇంటిగ్రేషన్
మీరు డైరెక్టరీలను మారుస్తున్నప్పుడు మీ షెల్తో లోతైనంగా ఇంటిగ్రేట్ చేయడానికి మరియు nvm ని స్వయంచాలకంగా పిలవడానికి avn ని ఉపయోగించవచ్చు.
మీరు తేలికైన పరిష్కారాన్ని ఇష్టపడితే, మీరు క్రింది పద్ధతిని ఉపయోగించవచ్చు.
.nvmrc ఫైల్ ఆధారంగా zsh టెర్మినల్లో Node.js వెర్షన్లను స్వయంచాలకంగా మార్చడం
మీ $HOME/.zshrc కు క్రింది కోడ్ను జోడించిన తర్వాత, .nvmrc ఫైల్ను కలిగి ఉన్న డైరెక్టరీలోకి ప్రవేశించినప్పుడు nvm use స్వయంచాలకంగా పిలవబడుతుంది. .nvmrc ఫైల్లోని స్ట్రింగ్ ఏ Node.js వెర్షన్ను ఉపయోగించాలో nvm కు చెబుతుంది.
bash
# హోమ్ డైరెక్టరీని తెరిచి .zshrc ఫైల్ను సవరించండి
$ cd
$ vi .zshrcఇది .zshrc కు వ్రాయవలసిన కోడ్:
bash
# ఈ కోడ్ సెగ్మెంట్ను .zshrc ఫైల్కు కాపీ చేయండి
# nvm ప్రారంభం తర్వాత దీనిని ఉంచండి!
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 "Reverting to nvm default version"
nvm use default
fi
}
add-zsh-hook chpwd load-nvmrc
load-nvmrc.zshrc ఫైల్ను సవరించిన తర్వాత, కమాండ్ను ప్రభావవంతంగా చేయడానికి source .zshrc ని అమలు చేయండి:
bash
$ source ~/.zshrc.nvmrc ఫైల్తో ప్రాజెక్ట్లలో, మీరు vscode లో ఇంటిగ్రేటెడ్ టెర్మినల్ను తెరిచినప్పుడు, nvm use స్వయంచాలకంగా అమలు చేయబడిందని మీరు కనుగొంటారు, కమాండ్ లైన్లో సంబంధిత అవుట్పుట్తో.
