UP | HOME

유의적 버전

Table of Contents

Semantic Versioning

유의적 버전 2.0.0 | Semantic Versioning에 잘 설명되어 있다:

버전을 주.부.수 숫자로 하고:

기존 버전과 호환되지 않게 API가 바뀌면 “주(主) 버전”을 올리고, 기존 버전과 호환되면서 새로운 기능을 추가할 때는 “부(部) 버전”을 올리고, 기존 버전과 호환되면서 버그를 수정한 것이라면 “수(修) 버전”을 올린다.

1. 연산자

잘 호환되는 패키지 범위를 정의하는 연산자가 있는데, 각 패키지 매니저마다 연산자의 형태나 의미가 조금씩 다르다. 주요 차이는 아래와 같다:

  1. 주를 고정하거나, 주와 부를 고정하거나
  2. 수를 생략했을 때의 동작 차이
  3. 1.0.0 미만에서의 동작 차이
패키지 매니저 연산자 예시 의미
npm ~ ~1.2.3 ≥1.2.3 ∧ <1.3.0
npm ^ ^1.2.3 ≥1.2.3 ∧ <2.0.0
mix, rubygems ~> ~>1.2.3 ≥1.2.3 ∧ <1.3.0
mix, rubygems ~> ~>1.2 ≥1.2.0 ∧ <1.3.0

Author: 안녕

Created: 2024-12-10 Tue 22:08