(Node Package Manager)
package : npm에 업로드 된 Node Module 입니다.
npm은 자바스크립트용 패키지 매니저 입니다. 모듈들을 모아두는 저장소의 역할을 합니다.
위에서의 이유로 Node 프로젝트를 시작할 때는 프로젝트 폴더 내부에 package.json을 만들고 시작해야 합니다.
package.json 생성
npm init 을 입력하면 다음과 같은 내용이 나옵니다.| 키 | 값 |
|---|---|
| package name | 프로젝트 이름 |
| version | 프로젝트 버전 |
| description | 프로젝트 설명 |
| entry point | 자바스크립트 실행 파일 진입점 |
| test command | 코드를 테스트 할 때 입력할 명령어 |
| git repository | 코드를 저장해둔 Git 저장소 주소 |
| keywords | 프로젝트 검색할 때 참조되는 키워드 |
| license | 해당 패키지의 라이센스 |
보다 자세한 package 명령어는 아래 블로그를 참고해주세요
package.json과 의존성 관리
npm install [@<scope>/] <name>@<tag/version/version range>
패키지 스코프는 일종의 네임스페이스 입니다. // 패키지명이 중복되는 경우 충돌을 방지해줍니다. 보다 자세한 내용은 다음을 참고 3.1
intall, i, 그리고 add 모두 같은 의미와 기능을 합니다.
패키지명 뒤쪽에 태그, 버전, 버전범위를 지정할 수 있씁니다.
없는 경우에는 latest(최신)태그를 기본값으로 사용합니다.
install 옵션
npm install 패키지명 - 로컬 설치, 해당 프로젝트에서만 사용합니다.npm install -g 패키지명 - 전역 설치, 모든 프로젝트에서 사용할 수 있습니다. (협업시 권장하지 않음)npm install --save-dev 패키지명 - 패키지 설치와 함께 package.json의 devDependencies에 설치된 패키지와 버전이 기록됩니다. // --save-dev => --save-d 로 줄여서 사용가능합니다.npm install - package.json의 모든 의존 패키지를 한번에 설치합니다.npm install하여 package.json에 명시된 모든 의존 패키지를 한번에 설치할 수 있습니다.npm update 패키지명 - 패키지를 업데이트 합니다.npm update 패키지명 -g - node가 설치되어 있는 디렉토리의 의존성 패키지를 업데이트 할 때 사용합니다.npm list - 패키지 목록을 확인합니다. (설치된 모든)npm ls - 패키지 목록을 확인합니다.npm ls [@scope/] 패키지명 - 특정 패키지가 설치되어 있는지 확인합니다.npm list -g - 전역 설치된 패키지 목록을 확인합니다.npm list --depth=0 전역 설치된 패키지목록의 버전 정보만 확인합니다.npm root -g - 전역 패키지 설치 폴더를 확인합니다.npm list --depth=0 - 버전 정보만 출력합니다.npm list --json - .json 형식으로 출력합니다.npm list --long - 한 줄로 출력합니다.npm install 패키지명@n.n.n - n.n.n 버전에 해당하는 패키지를 설치합니다npm install 패키지명@lasteset - 최신 버전을 설치합니다.npm -v - 설치된 npm의 버전을 확인합니다. npm outdated - 현재 설치된 패키지의 버전의 변화가 있는지 확인합니다.npm show 패키지명 version - 패키지의 최신 버전을 확인합니다.패키지 버전 올림
npm version patch - 패치 버전을 올립니다.npm version minor - 마이너 버전을 올립니다.npm version major - 메이저 버전을 올립니다.npm uninstall 패키지명 - 로컬, 개발 패키지를 제거합니다.npm uninstall -g 패키지명 - 전역 패키지를 제거합니다.npm search 패키지 or npmjs.com페이스북에서 npm의 용량, 패키지의 내려받기 속도, 보안 문제의 한계를 개선하여 만든 패키지 매니져입니다.