📦

프로젝트마다 NVM 으로 Node 버전 관리

Updated
2024/09/11 15:20
Category
Front-end
Tags
npm
nvm
Node.js
2 more properties

Install NVM

우선 필수 재료인 NVM을 설치합니다.

curl

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.1/install.sh | bash
Bash
복사

wget

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.1/install.sh | bash
Bash
복사

NVM 기본 사용 가이드

프로젝트 경로에서 터미널을 열어 간단한 명령어를 사용해보겠습니다.

ls

현재 본인의 PC에 설치되어있는 node 버전 리스트를 보여줍니다.
nvm ls
Bash
복사

install

원하는 node 버전을 설치합니다.
nvm install {version}
Bash
복사

use

설치한 노드 버전중에서 원하는 버전을 선택하여 사용합니다.
nvm use {installed node version}
Bash
복사

프로젝트마다 노드버전 설정 및 자동화

많은 프로젝트를 관리하다보면 각각의 프로젝트에서 권장하는 노드 버전이 존재합니다. 그리고 특정 버전 이하로 떨어지면 설치나 실행이 불가한 경우도 발생하고 이런 문제가 발생했을때마다 해당 프로젝트가 어떤 노드 버전을 권장하고 있는지 확인하고 설치하고의 노동이 발생합니다.
이런 문제를 좀 더 편리하게 하기 위해서 해당 프로젝트마다 노드 버전을 명시하는 설정 파일을 만들고 더 나아가 프로젝트 경로에 진입했을때 버전을 자동으로 변경해주는 자동화 방법에대해서 설명해드리겠습니다.

1. 프로젝트마다 노드 버전 명시

1.
create .nvmrc to project root path
2.
write using node version.
// .nvmrc v18.16.0
Bash
복사
3.
play command nvm use to project path.

2. Auto change node version use “.nvmrc”

If you want to autoload the specified node version. You can past this code to .zshrc .
# place this after nvm initialization! autoload -U add-zsh-hook load-nvmrc() { local node_version="$(nvm version)" 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" != "$node_version" ]; then nvm use fi elif [ "$node_version" != "$(nvm version default)" ]; then echo "Reverting to nvm default version" nvm use default fi } add-zsh-hook chpwd load-nvmrc load-nvmrc
Shell
복사
이제 .nvmrc 가 생성된 프로젝트에 진입시 자동으로 노드 버전을 변경해주는것을 확인 할 수 있습니다.