Panduan kebijakan Debian
Keduanya tercakup dalam:https://www.debian.org/doc/debian-policy/#version yang juga direproduksi dalam:
man deb-version
Manual tersebut mengatakan bahwa format lengkapnya adalah:
[epoch:]upstream_version[-debian_revision]
epoch
Manual mengatakan:
Ini disediakan untuk memungkinkan kesalahan dalam nomor versi versi paket yang lebih lama, dan juga skema penomoran versi paket sebelumnya, untuk ditinggalkan.
Misalnya, paket asli memiliki versi:
2019.12019.21.2(paket asli memutuskan untuk mengubah skema penamaan rilis secara acak)1.3
Kemudian Debian memperlakukannya sebagai:
0:2019.1(umumnya hanya dikenal sebagai2019.1karena0:terkemuka dapat dihilangkan)0:2019.21:1.2(Debian mengubah zaman dari 0 menjadi 1 untuk menangani skema penamaan baru)1:1.3
Dengan cara ini kita masih dapat mengetahui urutan versi dengan jelas dari string versi paket, atau dapat membedakannya sama sekali jika paket asli membuat dosa utama dengan benar-benar menggunakan kembali rilis nama lama dalam skema baru.
Dapatkah Anda membayangkan hal-hal mengerikan yang harus diakomodasi oleh pengembang Debian? :-)
debian_revision
Manual mengatakan:
Bagian nomor versi ini menentukan versi paket Debian berdasarkan versi upstream
Revisi Debian diperlukan untuk Debian karena perubahan pada skrip/patch build yang digunakan paket Debian sendiri di atas sumber perangkat lunak itu sendiri.
-ubuntuY
Ubuntu juga dapat menambahkan -ubuntuY akhiran akun untuk perubahan yang dilakukan pada kemasan Ubuntu di atas kemasan Debian.
Jadi misalnya, 4:4.7.4-0ubuntu8 berarti ini adalah versi ke-8 dari paket Ubuntu yang didasarkan pada 4:4.7.4 Paket Debian.
Ini karena Ubuntu menggunakan Debian sebagai basis, tetapi juga dapat menambahkan perubahan tambahan di atasnya.
0 disana hanya bertindak sebagai pengganti ketika paket Debian tidak memiliki nomor, karena debian_revision bersifat opsional.
Lebih detail di:https://serverfault.com/questions/604541/debian-packages-version-convention/708569#708569
Angka sebelum : adalah zaman . Ini menimpa versi untuk tujuan pemesanan, mis. 3:3.1 dianggap lebih baru dari 2:3.2. Ini digunakan saat pembuat paket perlu menurunkan versi paket di repo karena salah satu dari berbagai alasan.
Angka (nilai, sebenarnya) setelah - adalah rilis . Ini membedakan antara rilis yang berbeda dari sebuah paket yang memiliki versi yang sama. Ini digunakan untuk mis. tambalan keamanan ke versi perangkat lunak yang ada.