프론트
IDE 켜지면 저절로 node 버전 셋팅되도록 하기
ZestLee
2024. 3. 10. 16:11
개요
- IDE 를 킬 때마다 매번 node 버전을 셋팅하는 것이 킹받았다
사전 작업
- 프로젝트의 node version 을 .nvmrc 로 추가해 놓는다
-
// .nvmrc 12.16.3
- 이것은 각 개발자가 로컬에 갖고 있는 것이 아닌,
프로젝트 디렉토리에 넣고, git 에 올리는 편이 나을 것 같다
(모든 개발자의 노드 버전을 맞추기 위해)
-
zsh 설정
- 터미널에 vi ~/.zshrc 입력하여 zshrc 파일을 엶
- 최하단에 아래 내용을 넣고 > esc > :wq 하여 저장
-
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
- .nvmrc 파일이 있음
- nvm 버전이 설치되어있지 않음
- 해당 버전을 설치
- nvm 버전이 설치되어있음
- 해당 버전을 사용하도록 함
- nvm 버전이 설치되어있지 않음
- .nvmrc 파일이 없음
- 현재 node 버전이 nvm 기본 버전이 아님
- nvm 기본 버전을 사용하도록 함
- 현재 node 버전이 nvm 기본 버전이 아님
이는 디렉토리 변경할 때마다 실행됨
터미널을 새로 킬 때마다 .nvmrc 가 있는지 체크하기 때문에 성능 저하가 발생할 수도 있음
하지만 디렉토리를 자주 옮기는 경우가 적다면 차라리 자동화 시켜놓는 편이 편할듯