24 nvm이란?

source: categories/study/vue-experiance/vue-experiance_9-14.md

24. nvm이란?

node version manager의 약자로 노드 버전을 관리해주는 프로그램입니다.

nvm을 사용하는 이유

프로젝트마다 node 버전이 다릅니다.

그리고 node 버전에 따라 호환되는 라이브러리 버전도 다릅니다.

그리고 그로인해 빌드 결과물도 조금씩 달라질 수 있습니다.

이로인해 발생하는 문제를 최소화하고자 프로젝트별로 node 버전이 설정되어있습니다.

하지만 그러다보면 프로젝트마다 node를 지우고 설치해야되는 번거로움이 발생합니다.

그런 번거로움을 nvm을 통해 해결할 수 있습니다.

nvm 설치방법

  • 윈도우OS nvm 설치방법: https://www.hanumoka.net/2021/03/09/node-20210309-windows-nvm-install/

  • 맥OS nvm 설치방법: https://somjang.tistory.com/entry/macOS%EC%97%90-nvm%EC%84%A4%EC%B9%98%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95-feat-brew

구글 검색하시면 정리되어있는 글들이 많이 있습니다.

nvm 사용방법

위와 같이 .nvmrc 라는 파일에 노드 버전이 명시되어있습니다.

nvm이 설치되어있는 상태에서

nvm install

명령어를 입력하시면 위 .nvmrc에 명시된 노드 버전이 설치됩니다.

그리고

nvm use

명령어를 사용하시면 .nvmrc에 명시된 노드 버전으로 자동으로 바뀝니다.

주의사항

윈도우OS와 달리 맥OS에서는 프로젝트 폴더에서 새 터미널을 열때마다 node 를 실행하기 전에 항상 위 명령어로 노드 버전을 바꿔줘야합니다.

(윈도우OS는 해당 프로젝트 폴더에서 한번 설정하면 그 버전으로 쭉 유지가됩니다.)

그 이유는 맥OS에서는 어떤 버전을 기본으로 사용할지 따로 설정하는 옵션이 있기 때문입니다.

아래와 같이

nvm list

명령어를 실행하시면 default로 설정된 노드 버전을 확인하실 수 있습니다.

그 불편함을 없애기 위해서 기본버전을 변경해주시면됩니다.

nvm alias default 14.17.6

위 명령어를 실행하시면 기본 노드 버전이 14.17.6으로 설정돼고 새로운 터미널 창을 실행하셔도 계속 14.17.6으로 유지가됩니다.