NPM과 NVM의 차이점


82

npm 이 패키지 관리자이고 nvm 이 노드 버전 관리자 라는 것을 알고 있습니다. 현재 Bash를 사용하여 개발 및 프로덕션 환경을 자동 설치하려고하는데 어떻게 시작했고 어떤 순서로 시작했는지 잊어 버렸습니다. npm을 설치 한 후 nvm이 설치되지 않았습니다.

그래도 nvm을 설치해야합니까? 그렇다면 어떤 이점이 있습니까?


5
nvm은 npm을 설치하는 Node를 설치합니다. 노드 버전간에 전환 할 필요가 없거나 전환하지 않으려면 nvm이 필요하지 않을 것입니다.
Felix Kling 2015 년

답변:


96

nvm(노드 버전 관리자)는 Node.js를 다운로드하고 설치할 수있는 도구입니다. 를 통해 설치했는지 확인하십시오 nvm --version.

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.26.1/install.sh | bash

npm(노드 패키지 관리자)는 자바 스크립트 패키지를 설치할 수있는 도구입니다. 를 통해 설치했는지 확인하십시오 npm --version.

npmNode.js와 함께 제공되므로 노드가 설치되어 있으면 ( node --version) npm설치 했을 가능성이 큽니다 .

nvm시스템에 설치된 Node.js의 여러 버전을 유지하거나 현재 버전을 업그레이드하려는 경우 가 아니면 필요하지 않습니다 .


1
즉, npm 버전을 변경하고 싶지 않기 때문에 nvm install watchman대신 사용할 수 있습니다npm install watchman
AVI

@JokerFan 정확히 사실이 아닙니다. 실행할 수 없습니다 nvm install watchman. 변경된 버전 node으로 nvm의 버전을 npm변경할 때도 마찬가지입니다.
ThomasReggi

2
시스템에 여러 버전의 Node.js가있는 것이 합리적입니까?
Ajay S

2
@AjayS 계약자에게 매우 일반적인 노드 버전 요구 사항이 매우 구체적인 두 개의 개별 프로젝트에서 작업 할 수 있습니다.
Juan Mendes

23

nvm은 "활성"nodejs 버전 관리자입니다. 동일한 시스템에 여러 버전의 노드가있을 수 있으며 "nvm use version"을 수행하여 전환 할 수 있습니다. npm은 시스템에 nvm이있는 경우 nvm을 존중합니다. 즉, 0.12.7이 활성화되어 있고 npm install -g uuid를 수행하면 0.12.7 미만으로 전역 적으로 설치되지만 4.0.0으로 전환하면 uuid가 더 이상 전 세계적으로 사용 가능합니다.

어쨌든 패키지를 설치하기 위해 반드시 nvm이 필요하지는 않습니다.


기본적으로 nvm과 함께 제공되는 버전은 무엇입니까?
JohnTheBeloved

@JohnTheBeloved : 없음. nvm은 기본적으로 OS 버전을 가리 킵니다.
Felix Kling 2015 년

1
@FelixKling이 맞습니다. "nvm ls"를 수행하여 nvm에서 사용하는 버전을 확인하고 "node -v"를 수행하여 현재 활성 노드를 볼 수 있습니다.
masimplo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.