프로세스 오버 헤드 / 오디오를 피하기 위해 일반적인 규칙을 무시하는 것처럼 들립니다. 그게 ...
당신이하고있는 일은 더 이상 내부 감사 기준을 트리거하지 않기 위해 기능 / 부 버전 번호 를 한 자리 로 옮기기 위해 여분의 버전 번호 (부 PCI 번호)를 의도적으로 의도적 으로 만드는 것입니다.
어쨌든 시맨틱 버전 관리에 대한 질문에 시맨틱 버전 관리 사양은 다음과 같습니다.
버전 번호 MAJOR.MINOR.PATCH가 주어지면 다음을 증가 시키십시오.
- 호환되지 않는 API 변경을 할 때 주요 버전,
- 이전 버전과 호환되는 방식으로 기능을 추가 할 때 마이너 버전
- 이전 버전과 호환되는 버그 수정을 할 때 PATCH 버전.
- 시험판 및 빌드 메타 데이터에 대한 추가 레이블은 MAJOR.MINOR.PATCH 형식의 확장으로 제공됩니다 .
강조합니다.
문제는 시험판 / 빌드 메타 데이터에 네 번째 문자를 사용하고 있습니까? 아니면 기본적으로 출시 중이라는 다른 버전 표시입니까?
"예"인 경우 시맨틱 버전 관리 스펙이이를 허용합니다. "아니오"인 경우 기술적으로 시맨틱 버전 관리를 따르지 않는 것입니다.
그리고 더 높은 수준의 논쟁의 여지가있는 질문으로, 그것은 정말로 중요합니까?
엄격하게 준수하기를 원하는지 여부는 귀하와 팀이 결정해야합니다. 시맨틱 버전 관리의 목적은 API 호환성을 돕는 것입니다.
API에 영향을 미치지 않는 버그 수정은 패치 버전을 증가시키고 이전 버전과 호환되는 API 추가 / 변경은 부 버전을 증가시키고 하위 버전과 호환되지 않는 API 변경은 주 버전을 증가시킵니다.
이 시스템을 "시맨틱 버전 관리"라고합니다. 이 체계에서 버전 번호와 변경 방법은 기본 코드와 한 버전에서 다음 버전으로 수정 된 내용에 대한 의미를 전달합니다.
버전 관리가 API의 다운 스트림 사용자에게 영향을 줄 때 더욱 명확하게하는 시스템입니다.
API가 비슷하게 명확하다면 선택하는 방식이 그리 크지 않습니다. 예를 들어 3.4.2를 사용하고 3.4.10으로 업그레이드 해야하는 경우 의미 체계 버전 관리가 간단합니다. 새 버전이 3.5.1이면 이전 버전과 호환된다는 것을 알고 있습니다. 그리고 버전 4.0.1이 주요 변경 사항이라는 것을 알고 있습니다.
그것은 버전 번호의 의미의 전부입니다.
@enderland 기본적으로 그렇습니다. 주요 (PCI). 경미 (PCI). 특징 .HOTFIX + BUILD. 우리는 기본적으로 PCI (및 회사의 PCI 대주주)가 관여하지 않고 3 차 및 4 차 구성 요소 만 변경할 수 있습니다. 나에게 이것이 약간 생각한 것처럼 느껴지지만, 그들이 버전 번호를 관리하는 방식으로 정당화되었는지는 확실하지 않지만 PCI와 감사 프로세스에 대해서는 달리 말할 수는 없습니다.
좋아, 괜찮아 귀하에게 적합한 시스템이 있으며 귀하의 요구를 충족시킵니다. 그것이 버전 관리의 요점입니다.
API가 개인용 (내부 전용) 인 경우 API를 사용하는 모든 사람에게 의미가있는 한 버전 관리 방법은 중요하지 않습니다. 표준 형식의 버전 관리는 "이 버전의 의미는 무엇입니까?"를 알아야하는 다른 많은 API 소비자가있는 경우입니다.
임의의 버전 관리 시스템이 있으면 시맨틱 버전 관리와 같은 다른 시스템에 익숙한 사람들을 혼동시킬 수 있습니다. 그러나 아무도 자신의 버전 관리 시스템을 사용하는 사람을 제외하고 실제로 버전 관리 시스템을 사용하지 않는 사람은 중요하지 않습니다.