"tailwindcss": "^3.4.14",
"vite": "^5.4.10",
package.json에 버전을 명시할 때 버전 앞에 붙는 틸드 ~
와 캐럿 ^
이 무슨 뜻인지 정확하게 이해하고자 정리하였다. (전에 글로 읽었었는데 까먹었다…)
틸드와 캐럿에 대해 알아보기 전에 소프트웨어의 버전을 작성하는 방법부터 간단하게 이해하고 넘어가자. 소프트웨어의 버전을 명시하는 방법은 다양할 수 있다. 그 중 node.js
와 npm
은 모두 **시멘틱 버저닝(Semantic Versioning)**이라는 소프트웨어 버전 변경 규칙을 사용한다.
시멘틱 버저닝은 Major.Minor.Patch
형태로 버전을 작성한다.
https://semver.org/에 들어가면 자세한 semantic versioning 명세를 확인할 수 있다. summary 내용만 간단하게 살펴보면 다음과 같다.
버전 번호 MAJOR.MINOR.PATCH가 있을 때, 다음과 같이 증가시킨다:
pre-release(1.0.0 미만인 버전)와 build metadata를 위한 추가 라벨은 MAJOR.MINOR.PATCH 형식의 확장으로 사용할 수 있다.
그럼 다시 돌아와서 틸드 ~
와 캐럿 ^
에 대해 알아보자.
틸드 버저닝: patch 범위 내에서 버전 업데이트
~3.4.7: >= 3.4.7
< 3.5.0
캐럿 버저닝: major 이하 범위에서 버전 업데이트
^3.4.7: >= 3.4.7
< 4.0.0