문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
node.js:nvm [2014/08/28 11:51] kwon37xi |
node.js:nvm [2023/01/18 22:47] (현재) kwon37xi [.nvmrc 자동 인식 - bash] |
||
---|---|---|---|
줄 1: | 줄 1: | ||
====== NVM ====== | ====== NVM ====== | ||
- | | + | |
+ | * [[node.js: | ||
+ | * [[node.js: | ||
+ | * [[node.js: | ||
+ | * [[node.js: | ||
- | ====== 설치 | + | ===== 설치 ===== |
- | * 소스 받기 | + | * 가급적 github 의 README 를 보고 따라할 것. 버전마다 달라질 수 있음.<code sh> |
- | git clone https://github.com/ | + | curl -o- https://raw.githubusercontent.com/ |
+ | </ | ||
- | # 주기적으로 업그레이드 필요한건가? | + | * .bashrc 등에 추가. 파일 마지막에 자동 추가 되지만 확인 한 번 해볼 것.< |
+ | export NVM_DIR=" | ||
+ | [ -s " | ||
+ | [ -s " | ||
</ | </ | ||
- | | + | |
- | source ~/ | + | ===== 사용 ===== |
+ | <code sh> | ||
+ | # node.js 버전 목록 보기 | ||
+ | nvm ls-remote | ||
+ | |||
+ | # 설치 | ||
+ | nvm install v0.11.15 | ||
+ | |||
+ | # 최신 LTS 설치 | ||
+ | nvm install --lts | ||
+ | |||
+ | # 사용 - 가장 최근 0.11.x 버전 사용 | ||
+ | nvm use 0.11 | ||
+ | |||
+ | # 현재 사용중인 버전 확인 | ||
+ | nvm current | ||
+ | |||
+ | # 전역 기본 버전 지정 | ||
+ | nvm alias default v7.7.1 | ||
+ | |||
+ | # 운영체제에 깔린 버전을 기본으로 | ||
+ | nvm alias default system | ||
+ | </ | ||
+ | |||
+ | ===== .nvmrc ===== | ||
+ | | ||
+ | * '' | ||
+ | * [[https:// | ||
+ | * 혹은 [[node.js: | ||
+ | * https:// | ||
+ | * [[https:// | ||
+ | <code sh> | ||
+ | nvm use < | ||
+ | cd targetdir | ||
+ | node -v > .nvmrc | ||
+ | </code> | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | ==== .nvmrc 자동 인식 - bash ==== | ||
+ | * [[https:// | ||
+ | * '' | ||
+ | * 아래 스크립트의 문제점은 이미 '' | ||
+ | < | ||
+ | autonvm() { | ||
+ | nvm_path=$(nvm_find_up .nvmrc | tr -d ' | ||
+ | |||
+ | # If there are no .nvmrc file, use the default nvm version | ||
+ | if [[ ! $nvm_path = *[^[: | ||
+ | |||
+ | if [[ -z $nvm_default_version ]]; then | ||
+ | nvm_default_version=$(nvm version default); | ||
+ | fi | ||
+ | |||
+ | # If there is no default version, set it to `node` | ||
+ | # This will use the latest version on your machine | ||
+ | if [[ $nvm_default_version == " | ||
+ | nvm alias default node; | ||
+ | nvm_default_version=$(nvm version default); | ||
+ | fi | ||
+ | |||
+ | # If the current version is not the default version, set it to use the default version | ||
+ | if [[ $(nvm current) != $nvm_default_version ]]; then | ||
+ | nvm use default; | ||
+ | fi | ||
+ | |||
+ | elif [[ -s $nvm_path/ | ||
+ | nvm_version=$(<" | ||
+ | |||
+ | # `nvm ls` will check all locally-available versions | ||
+ | # If there are multiple matching versions, take the latest one | ||
+ | # Remove the `->` and `*` characters and spaces | ||
+ | # `nvm_local_version` will be `N/A` if no local versions are found | ||
+ | if [[ -z $nvm_local_version ]]; then | ||
+ | nvm_local_version=$(nvm ls --no-colors " | ||
+ | fi | ||
+ | |||
+ | # If it is not already installed, install it | ||
+ | # `nvm install` will implicitly use the newly-installed version | ||
+ | if [[ " | ||
+ | nvm install " | ||
+ | elif [[ $(nvm current) != " | ||
+ | nvm use " | ||
+ | fi | ||
+ | fi | ||
+ | } | ||
+ | export PROMPT_COMMAND=" | ||
</ | </ | ||