Như tôi hiểu nó.
Phần trong ngoặc là thông tin dành riêng cho nhà cung cấp. Ubuntu cho bạn biết rằng đây là bản dựng gcc của Ubuntu và chuỗi sau nó là phiên bản gói.
Phiên bản gói được chia thành hai phần bằng dấu gạch nối (nếu có nhiều dấu gạch nối thì dấu gạch nối cuối cùng được sử dụng để tách). "Phiên bản ngược dòng" và "bản sửa đổi Debian" (trong một số trường hợp cũng có thể có một kỷ nguyên). "Phiên bản ngược dòng", có thể là số phiên bản theo nghĩa đen được sử dụng ngược dòng hoặc nó có thể chứa các chỉ dẫn khác, ví dụ: +dfsg để chỉ ra rằng các tệp không tự do đã bị loại bỏ khỏi tarball gốc hoặc +git để chỉ ra rằng những gì được đóng gói thực sự là một ảnh chụp nhanh git.
Trong trường hợp này, "phiên bản ngược dòng" là "7.5.0" (giống như phiên bản ngược dòng theo nghĩa đen) và "bản sửa đổi Debian" là "3ubuntu1~18.04"
Các thay đổi trong "Bản sửa đổi Debian" xác định các thay đổi trong Debian hoặc các dẫn xuất của nó không thay đổi nội dung của (các) tarball ngược dòng. Có một số nguyên tắc cơ bản khi chỉ định số phiên bản.
- Trong phạm vi có thể, nó phải xác định duy nhất một phiên bản của một gói. Rõ ràng điều này không thể được đảm bảo 100% với nhiều người tạo gói nhưng có một thông lệ được chấp nhận chung là các công cụ phái sinh phải bao gồm một "thẻ" duy nhất trong số phiên bản mà họ chỉ định.
- Khi một bản phát hành được cập nhật, số phiên bản phải tăng lên (theo quy tắc so sánh) để người dùng thực sự nhận được bản nâng cấp.
- Khi một gói nằm trong nhiều bản phát hành của một bản phân phối, phiên bản trong các bản phát hành mới hơn phải cao hơn trong các bản phát hành cũ hơn để người dùng nâng cấp hệ thống của họ có được phiên bản chính xác.
- Nó phải có ý nghĩa đối với người dùng.
Ký tự dấu ngã trong số phiên bản là đặc biệt, trong thuật toán so sánh phiên bản, nó so sánh thấp hơn chuỗi rỗng, đó là "1.2.3-2~foo" < "1.2.3-2" < "1.2.3-2foo" nó thường được sử dụng khi nhập một gói vào bản phát hành trước đó, nó cũng được sử dụng để biểu thị các phiên bản phát hành trước.
Vì vậy, bây giờ hãy phá vỡ "bản sửa đổi Debian" của gói này.
- "3" là bản sửa đổi từ chính Debian, chỉ ra rằng gói Debian mà gói Ubuntu này dựa trên là bản sửa đổi thứ ba mà họ đã thực hiện cho gói của mình cho 7.5.0.
- "ubuntu1" chỉ ra rằng gói này đã được sửa đổi bởi Ubuntu.
- ~ thường cho biết đây là một loại cổng sau nào đó.
- 18.04 dường như cho biết gói này đã được nhập vào bản phát hành nào. Điều này xuất hiện từ những gì tôi có thể nói là sử dụng đặc biệt. Có các tiêu chuẩn về cách phiên bản của các cổng sau được tải lên kho lưu trữ cổng sau, nhưng cổng sau này được phát hành dưới dạng bản cập nhật ổn định không thông qua kho lưu trữ cổng sau. Quá trình cập nhật ổn định dường như không bắt buộc một lược đồ tạo phiên bản cụ thể, nó gợi ý sử dụng một lược đồ từ quy trình cập nhật bảo mật, nhưng điều đó dường như không bao hàm trường hợp gói nhập ngược.