Giống như Shaun đã nói, thực sự không có một tiêu chuẩn nào. Một số công ty có các thực tiễn phiên bản tốt hơn các công ty khác (Tôi đã giao dịch với các nhà cung cấp bỏ qua các số phiên bản chính và các công ty khác bị mắc kẹt trên cùng một số bản phát hành sau đó).
Phải nói rằng, nhà phát minh Gravatars và đồng sáng lập của GitHub ( Tom Preston-Werner ) đã viết một tài liệu cho ' Phiên bản ngữ nghĩa ' rất đáng để đọc.
Đây là ngoại lệ của phần giới thiệu:
Để giải quyết vấn đề này, tôi đề xuất một bộ quy tắc và yêu cầu đơn giản chỉ ra cách thức số lượng phiên bản được gán và tăng. Để hệ thống này hoạt động, trước tiên bạn cần khai báo API công khai. Điều này có thể bao gồm các tài liệu hoặc được thực thi bởi chính mã. Bất kể, điều quan trọng là API này phải rõ ràng và chính xác. Khi bạn xác định API công khai của mình, bạn giao tiếp các thay đổi với API với số gia cụ thể đến số phiên bản của bạn. Xem xét một định dạng phiên bản của XYZ (Major.Minor.Patch). Sửa lỗi không ảnh hưởng đến việc tăng API phiên bản vá lỗi, bổ sung / thay đổi API tương thích ngược làm tăng phiên bản nhỏ và thay đổi API không tương thích ngược làm tăng phiên bản chính.
Tôi gọi hệ thống này là "Phiên bản ngữ nghĩa." Theo sơ đồ này, số phiên bản và cách chúng thay đổi truyền đạt ý nghĩa về mã cơ bản và những gì đã được sửa đổi từ phiên bản này sang phiên bản tiếp theo.