npm-dist-tag
팩키지의 배포 태그 수정
Synopsis
npm dist-tag add <pkg>@<version> [<tag>]
npm dist-tag rm <pkg> <tag>
npm dist-tag ls [<pkg>]
Description
팩키지의 배포 태그를 추가, 삭제, 출력합니다.
- add : 특정 버전의 팩키지에 특정 태그를 답니다.
- rm : 팩키지에서 더 이상 사용되지 않는 태그를 제거합니다.
- ls : 팩키지의 모든 dist-tag를 출력합니다.
태그는 팩키지를 설치할 때 특정 버전 숫자 대신에 팩키지의 버전을 참조하기 위해서 사용될 수 있습니다.
npm install <name>@<tag>
의존 팩키지를 설치할 때, 원하는 태그 버전을 지정할 수 있습니다.
npm install --tag <tag>
이 명령은 npm dedupe
에도 적용됩니다.
팩키지를 퍼블리싱할 때 --tag
옵션을 사용하여 npm publish --tag=beta
와 같이 하지 않으면 latest
태그가 지정됩니다.
PURPOSE
태그를 버전 숫자를 대신하는 별명 정도로 사용할 수 있습니다.
예를 들어, 개발과정에서 프로젝트에 여러 개의 스트림을 선택할 수 있으며 각 스트림에서 각기 다른 태그를 사용할 수 있습니다. 예) stable
, beta
, dev
, cnary
디폴트로, npm은 현재 버전의 팩키지를 지정하기위해서 latest
태그를 사용하며 (@<version>
또는@<tag>
을 지정하지 앟고) npm install <pkg>
를 하면 latest
태그를 설치합니다. 일반적인 프로젝트에서는 안정적인 릴리즈 버전으로 latest
태그만 사용하며 프리릴리즈와 같은 안정적이지 않은 버전에는 다른 태그를 사용합니다.
어떤 프로젝트에서는 next
태그를 앞으로 릴리즈될 버전의 식별자로 사용하기도 합니다.
npm 자체에서 특별히 구분하는 태그는 디폴트 latest
이 외에는 없습니다.
CAVEATS
이 명령은 이전에는 npm tag
였었는데 지금은 새로운 태그를 생성하는 용도로 별도의 문법을 가지고 있습니다.
태그는 버전 숫자와 npm install <pkg>@<version>, npm install <pkg>@<tag>
와 같이 동일한 위치를 사용해야하므로 네임스페이스를 공유해야합니다.
v1.4
와 같이 적법한 semver 범위로 인식되어 >=1.4.0 <1.5.0
와 같은 의미로 해석될 수 있는 태그는 태그로 사용될 수 없습니다.
semver과의 충돌을 피할 수 있는 가장 간단한 방법은 태그를 숫자나 v
문자로 시작하지 않도록 하는 것입니다.