npm link
npm link
는 로컬에서 패키지를 심볼릭 링크를 통해 다른 프로젝트에서 사용할 수 있도록 하는 명령어다.
외부로 배포하지 않은 채로 로컬 패키지에 임포트할 수 있으며, 심볼릭 링크를 이용하므로 패키지의 변경사항이 즉시 반영되므로 패키지 개발 중 테스트에 유용하다.
링크 생성 & 연결
1
2
3
4
5
# [P] 링크를 생성할 패키지 프로젝트 경로에서
npm link
# [M] 패키지를 가져올 프로젝트 경로에서
npm link <패키지명>
연결 해제
1
2
3
4
5
# [M] 패키지를 가져온 프로젝트 경로에서
npm unlink --no-save <패키지명>
# [P] 링크를 생성한 패키지 프로젝트 경로에서
npm uninstall
현재 생성된 심볼릭 링크 확인
1
npm ls -g --depth=0
npm pack
npm link
는 심볼릭 링크를 통해 연결하는 방식이지만, npm pack
은 패키지를 번들링해 실제로 설치할 수 있는 방식이다.
npm link는 단순 심볼릭 링크로 연결만 수행하므로 패키지의 일부 설정이 정상적으로 반영되지 않을 수 있으나, npm pack은 직접 설치하는 방식이므로 실제 배포 시의 환경과 매우 유사한 방식으로 테스트를 진행할 수 있다.
번들링 및 사용
1
2
3
4
5
6
# [P] 번들링할 프로젝트 경로
# 결과물로 프로젝트 경로에 <프로젝트명-버전.tgz> 파일이 생성된다
npm pack
# [M] 패키지를 가져올 프로젝트 경로
npm install <패키지경로/프로젝트명-버전.tgz>