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.1
2019.2
1.2
(paket asli memutuskan untuk mengubah skema penamaan rilis secara acak)1.3
Kemudian Debian memperlakukannya sebagai:
0:2019.1
(umumnya hanya dikenal sebagai2019.1
karena0:
terkemuka dapat dihilangkan)0:2019.2
1: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.