Semantic Versioning

요약

버전을 주.부.수 (MAJOR.MINOR.PATCH) 숫자로 하고:

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

주.부.수 형식에 정식배포 전 버전이나 빌드 메타데이터를 위한 라벨을 덧붙이는 방법도 있다.

예시

  • 1.0.0
  • 1.9.0 < 1.10.0 < 1.11.0
  • 1.0.0-alpha, 1.0.0-alpha.1, 1.0.0-0.3.7, 1.0.0-x.7.z.92
  • 1.0.0-alpha+001, 1.0.0+20130313144700, 1.0.0-beta+exp.sha.5114f85
  • 1.0.0-alpha < 1.0.0-alpha.1 < 1.0.0-alpha.beta < 1.0.0-beta < 1.0.0-beta.2 < 1.0.0-beta.11 < 1.0.0-rc.1 < 1.0.0

참고