시맨틱버저닝

less than 1 minute read

시맨틱 버저닝

시맨틱 버저닝이란, 패키지 버전관리를 위해 만들어진 규칙중 하나임.

도입 배경은 의존성 지옥이라는 문제점을 구분하기 위해 등장함.

크게 X.Y.Z (1.2.1) 로 나뉘며 차례대로 메이저, 마이너, 패치 버전으로 나눔

특징:

  • 특정 버전으로 패키지를 배포 하고 나면 그 버전은 절대 변경을 하면 안된다. 변경 부분이 있다면 새로운 버전으로 배포 해야한다.
  • 초기 개발 단계에서는 메이저 버전인 0. 대로 시작하며 뒤에 버전은 편하게 변경해도 문제가없다.
  • 개발이 완료되고 1.0.0 버전을 패포할때 공개 API를 정의한다. 또한 공개 API 가 어떻게 변경 되었는지 릴리즈 노트를 작성해야한다.
  • 패치(Z) 버전은 보통잘못된 내부 기능을 수정하거나 오류나 자잘한 기능을 고칠때 사용된다.
  • 마이너(Y) 버전은 기존과 호환되는 새로운 기능이 추가 될 때 변경이 된다. 공개API의 앞으로 제거할 부분은 반듯이 명세를 해줘야하며, 내부 비공개 코드에 새로운 기능이 대폭 추가되거나 수정될때도 마이너 버전이 변경된다.
  • 메이저(X) 버전은 기존과 호환되지 않는 변화가 생길때 메이저 버전이 변경된다.

Updated: