카테고리 없음

유의적 버전 (Semantic Versioning, Semver)

gamzaggang7 2024. 4. 3. 21:32
728x90

유의적 버전 (Semantic Versioning, Semver)

유의적 버전이란 프로젝트가 개발되는 특정 시점 상태에 의미를 부여해서 숫자를 매기는 방법이다.

저번에 설치한 lodash를 보면 버전이 4.17.21이다. 마침표로 구분된 각각의 숫자는 차례대로 Major, Minor, Patch라고 부른다.

 

Major.Minor.Patch

Major 기존 버전과 호환되지 않는 새로운 버전
Minor 기존 버전과 호환되는 기능이 추가된 버전
Patch 기존 버전과 호환되는 버그 및 오타 등이 수정된 버전

 

만약 프로젝트에 새로운 기능을 추가했는데 그 기능이 추가되기 전의 프로젝트 상태와 호환이 안된다면 새로운 major버전으로, 호환이 된다면 새로운 minor버전으로 만들어야 한다.

 

버전 앞에 붙어 있는 ^ 기호Major 버전 안에서 가장 최신 버전으로 업데이트가 가능하다는 의미이다.

 

728x90

 

터미널에 npm info lodash를 입력한다. npm info [패키지명]은 원하는 패키지의 정보를 볼수있는 명령어다.

가장 최신 버전은 4.17.21이라고 명시되어 있다.

다른 버전으로 설치하고 싶다면 @ 뒤에 원하는 버전을 명시하면 된다.

 

다시 업데이트를 해보겠다. 

 

만약 lodash를 4.17.20으로 다시 설치하고 앞의 ^ 기호를 삭제하고 업데이트하면 lodash의 버전은 그대로 4.17.20이다. 즉 ^ 기호를 지워서 업데이트가 되지 않도록 할 수 있다.

 

~ 기호: minor 버전 안에서 가장 최신 버전으로 업데이트 가능

 

728x90