spring framework 나 여러 소프트웨어를 보다보면
6.1.0-RC1, 5.4.0-GA 이런 식으로 버전을 명명하는 경우가 있습니다.
각각의 뜻이 무엇을 의미하는지 알아보겠습니다.
숫자부분
6.1.0과 같이 이뤄진 앞버번은 대체로 아래와 같은 규칙을 따릅니다.
{major}.{minor}.{patch}
Major: 이전 버전과 호환이 안 되는 변경이 있다면 숫자를 올립니다
Minor: 이전 버전과 호환되는 기능 추가가 있다면 숫자를 올립니다.
Patch: 이전 버전의 버그를 수정했다면 숫자를 올립니다.
숫자 뒷부분 : 개발단계에 추가적으로 붙이는 부분
1) 프리알파(pre-Alpha) : 이 단계는 실제 개발 이전 단계의 모든 버전을 칭하며, 보통 프로토 타입까지의 단계를 얘기합니다.
2) 알파(Alpha) : 프로토 타입 이후 실제 테스트를 시작하는 단계부터 어느정도 기능이 구현된 단계입니다.
이 단계에서는 일부 기능 별로 테스트하는 경우가 많습니다.
3) 베타(Beta) : 알파 이후부터 소프트웨어 기능의 완성 전 버전 입니다.
4) RC(Release Candidates) : 최종 릴리즈 혹은 출시후보를 의미합니다. 출시전 마지막 베타를 보통 RC라고 지칭합니다.
rc버전이 나왔다고하면 곧 출시 되는구나 생각하시면 됩니다. rc버전에서 크게 버그가 안 보일 경우, 바로 출시 준비를 합니다.
5) Nightly : 매일매일 업데이트 및 수정되어 올라오는 버전입니다.
즉 하루하루 발생되는 이슈나 업데이트 사항이 있어 빌드되어 배포되는 버전입니다.
이러한 버전은 정식 버전보다 안정성은 떨어질 수 있습니다.
6) M(Milstone) : 6.0.0-M1, 6.1.1-M2와 같이 뒤에 숫자가 붙여지기도 하며,
주요 기능 및 버그를 수정된 버전입니다. 아직 모든 기능과 버그들이 수정되지 않은 단계입니다.
새로 개발 중인 기능이 있을 수 있습니다(인터페이스가 변경 될 수 있음)
숫자 뒷부분 : 정식출시 부터 붙이는 부분
RTM (Release to Manufacturing) : 제조업체가 하드웨어 장치와 마주치는 버그를 해결할 수 있도록 일반 대중에게 공개되기 전에 제조업체에 공개되는 버전입니다.
GA (General Availability) : 개발이 완료되어 웹이나 물리 매체를 통해 시장에서 이용할 수 있게 됨을 의미합니다.
LTS (Long Term Support) : LTS(Long Term Support)는 말 그대로 장기 지원되는 버전을 의미합니다.
일반 버전과 달리 안정성에 중점을 둔 버전으로, 기능 업데이트가 다른 일반 버전보다 적으나, 보안 업데이트의 지원 기간이 일반 버전보다 훨씬 깁니다. 그렇기 때문에 최신 기능보다 안정성이 더 중요한 곳에서 많이 쓰입니다
'개발용어' 카테고리의 다른 글
k8s 쿠버네티스 기본용어(node, pod, container) (1) | 2024.10.02 |
---|---|
SSRF란?, SSRF 대응방안, SSRF 예제, SSRF / CSRF 차이 (7) | 2024.09.26 |
닷넷 vs 닷넷프레임워크 차이, .NET vs .NET Framework 차이 (1) | 2024.07.27 |
docker란?, 도커 구조 (1) | 2023.11.14 |
gRPC란, protobuf란, Java gRPC 예제 코드, grpc단점, grpc java code example (1) | 2023.06.05 |
댓글