npm 버젼의 캐럿(^) 의미
아웃사이더님이 잘 정리해주신 글 보고 배운 내용 요약
npm 버젼 의미
{MAJOR}.{MINOR}.{PATCH}
- MAJOR: 하위호환성이 보장되지 않는 변경사항 발생시
- MINOR: 하위호환성 보장 하면서 기능추가
- PATCH: 하위호환성 보장 하면서 버그수정
npm 버젼의 ~(틸드), ^(캐럿) 의미
- 틸드(
~
) 는 요즘 잘 안 사용 -
캐럿(
^
)은 Node.js 모듈이 위 규약을 따른다는 것을 신뢰한다는 가정하에서 동작- 그래서 MINOR나 PATCH버전은 하위호환성이 보장되어야 하므로 업데이트를 한다
캐럿(^) 의 동작
최신 마이너 버젼으로 설치
^1.0.2 : >=1.0.2 <2.0
^1.0 : >=1.0.0 <2.0
^1 : >=1.0.0 <2.0
단, 1.0 미만 버젼의 경우는 자릿수까지 체크
^0.1.2 : >=0.1.2 <0.2.0
^0.1 : >=0.1.0 <0.2.0
^0 : >=0.0.0 <1.0.0
^0.0.1 : ==0.0.1
버젼 고정
그냥 간단하게 버젼을 고정하고 싶으면 특수기호 없이 그냥 버젼만 명시
// package.json
"dependencies": {
"if-logger": "0.4.2",
}