버전정보를 잘.... 지키는 곳에서 업무를 해본적이 없어서 검색해서 찾은 정보들을 정리해보았다.
버전의 정의
효율적으로 상품을 관리하기 위한 목적
소프트웨어, 하드웨어 상품의 개발 단계 또는 순서를 번호로 표시한 것
버전에 따라 내용과 기능에 차이가 있으므로 명확히 표시
버전 표기의 이유 ?
버전만으로 핫픽스된 이슈, 스펙의 구현을 볼 수 있어서 대략적인 프로젝트의 히스토리를 확인할 수 있다.
또한 로그 정리에 도움이 된다.
*핫픽스(Hotfix)란? 제품 사용 중에 발생하는 버그의 수정이나 취약점 보완, 또는 성능 향상을 위해 긴급히 배포되는 응급 패치 프로그램.
*로그(log)란? 로그파일은 운영 체제나 소프트웨어가 실행 중 발생하는 이벤트등의 메세지를 기록한 파일이다. |
라이브러리 예시
jQuery.js
2.1.1.-beta1
<주번호>,<부번호>,<패치번호>[-<상태 코드(beta, release 등..)><수정 넘버>]
*패치(patch)란? 기능을 보완하거나 기능을 더하기 위해 일부분을 수정하는 것. |
가이드라인
v1.1.0-release1
v<개편번호>,<릴리즈번호>,<패치번호>-<상태코드><핫픽스카운트>
v<Major Version>,<Minor Version>,<Build or MainTenance Version>
*릴리즈(release)란? 마지막 제품이 될 가능성이 있는 베타 버전, 상당한 버그가 나타나지 않으면 출시할 준비가 되었음을 의미한다. |
간단하게 정의하면?
<전체를 뒤엎을 변화>,<기능 수정, 기능 추가>,<버그, 내부 적 코드 보완>
상세 정의
개편번호
1로 시작함
주번호
프로젝트 개편 시 증가
증가 시 나머지 버전 정보는 초기화
릴리즈번호
공식적(master branch)으로 릴리즈 되었을 때 증가
증가 시 패치 정보 초기화
패치 번호
이터레이션 종료시마다 증가
버그 수정, 기능 추가에 대한 Change Log 작성
*이터레이션(iteration)이란? 애자일은 짧은 기간동안 동작하는 SW를 사용자에게 제공하면서 피드백을 받아서 고쳐나가는데, 이 짧은 기간을 이터레이션이라고 한다. (= 스크럼 개발 방법론에서는 스프린트(Spring)라고 한다.) |
상태코드
alpha - 개발중인 태그에 표기
beta - 베타중인 태그에 표기
release - 공식 배포 버전에 표기
핫픽스 카운트
beta, release 태그에만 존재
hotfix이슈 반영했을 경우 증가
오해
1.버전을 소수점으로 인식하면 안된다.
-
1.9 < 1.10
-
1.9는 9번째 릴리즈, 1.10은 10번째 릴리즈 버전을 뜻함.
-
01.01.10은 곧 1.1.10이라는 의미.
프로젝트에 적용 예시
그 전에는 중요하게 생각안했는데, 버전 정보는 엄청나구나를 알게되었다..
다만 실제로 적용하고 적응하기까지는 신경써야할 것 같다는 생각이 든다.
'개념' 카테고리의 다른 글
자바스크립트 프로토타입(Prototype)이란? __ 프로토타입링크(Prototype Link)__프로토타입객체(Prototype Object) (1) | 2020.02.14 |
---|---|
호이스팅(Hoisting)란? (0) | 2020.01.30 |
스코프(Scope)란? (0) | 2020.01.22 |
사파리 브라우저 쿠키(Cookie) 이슈 (0) | 2019.11.27 |
크롬 개발자 툴을 알아보자 (0) | 2019.08.01 |
AOS란? (0) | 2019.06.15 |
도메인(Domain) 또는 도메인 네임(Domain name), 네임서버 (Name server) (0) | 2019.06.05 |
웹 서버(Web Server)와 웹 호스팅(Web Hosting Service) (0) | 2019.06.05 |