कुछ पैकेजों में उनके संस्करण स्ट्रिंग के सामने एक कोलन से पहले अतिरिक्त संख्या क्यों होती है?


29

मैंने अभी देखा है कि शराब (और कई अन्य पैकेज) ने अपनी संस्करण योजना को कुछ इस तरह स्थानांतरित कर दिया है:

1:1.6.2-0ubuntu3

मैं सब कुछ समझ के बाद1: ... लेकिन क्या करता है 1:का उल्लेख?

यह प्रमुख संस्करण को प्रतिबिंबित करने के लिए प्रतीत नहीं होता है। लंबित उन्नयन की एक सूची को देखते हुए, इसके संस्करण हैं: 2:4.1.3...और #:उपसर्ग के बिना बहुत सारे पैकेज हैं ।

क्या चल रहा है?


यह उबंटू विशिष्ट प्रतीत हो रहा है, packages.debian.org/sid/wine यह उपसर्ग नहीं है
सिल्वेन पिनाओ

यह उबंटू में भी शराब के लिए नया है (14.04 के रूप में) लेकिन अन्य पैकेज जैसे python3-uno( उबंटू में और डेबियन में ) लगातार उपसर्ग है।
ओली

वास्तव में, मैंने
सुपरयुजर

@ ओली यह शराब के लिए नया नहीं है , यह हमेशा से था, लेकिन क्योंकि इसकी कीमत 014.04 तक हर समय थी, इसे संस्करण स्ट्रिंग में लिखे जाने के लिए छोड़ दिया गया था। इसलिए, आप उपसर्ग के बिना#: उन सभी भरपूर पैकेजों के बारे में सोच सकते हैं, जैसे वे वास्तव में होते हैं 0:। उन उत्तरों को देखें जो आपको बेहतर समझने के लिए मिले हैं।
राडू रियडेनू

जवाबों:


26

से man deb-version:

NAME
       deb-version - Debian package version number format

SYNOPSIS
       [epoch:]upstream-version[-debian-revision]

DESCRIPTION
       Version  numbers as used for Debian binary and source packages
       consist of three components. These are:

       epoch  This is a single (generally  small)  unsigned  integer.
              It  may  be omitted, in which case zero is assumed.  If
              it is omitted then the upstream-version may not contain
              any colons.

              It is provided to allow mistakes in the version numbers
              of older versions of a package, and  also  a  package's
              previous version numbering schemes, to be left behind.

तो, वह अतिरिक्त संख्या (आपके मामले में 1) एपोच घटक को संदर्भित करती है जिसे छोड़ा जा सकता है जिस स्थिति में 0 मान लिया गया है । और इसलिए, यदि आप एक संस्करण स्ट्रिंग देखते हैं जो ऐसा दिखता है कि 1.6.2-0ubuntu3आप सोच सकते हैं कि वास्तव में यह कैसा दिखता है 0:1.6.2-0ubuntu3। यह कैसे सहायक है और यह कैसे आता है: यह पैकेज के पुराने संस्करणों के संस्करण संख्याओं में गलतियों की अनुमति देने के लिए प्रदान किया जाता है, और पैकेज के पिछले संस्करण की नंबरिंग योजनाओं को भी पीछे छोड़ दिया जाता है । बेहतर समझने के लिए, डेबियन पॉलिसी मैनुअल - नियंत्रण फ़ाइलों और उनके क्षेत्रों से निम्नलिखित व्याख्यात्मक पैराग्राफ पर करीब से नज़र डालें :

जब दो संस्करण संख्याओं की तुलना, पहले युग प्रत्येक की तुलना की जाती है, तो upstream_version अगर युग बराबर है, और फिर है debian_revision अगर upstream_version भी बराबर है। युगांतर की तुलना संख्यात्मक रूप से की जाती है।

तथा:

ध्यान दें कि युगों का उद्देश्य हमें संस्करण क्रमांकन में गलतियों को पीछे छोड़ने की अनुमति देना है, और उन परिस्थितियों का सामना करना है जहां संस्करण संख्या योजना बदलती है। यह उन संस्करणों की संख्याओं का सामना करने का इरादा नहीं है जिनमें अक्षरों के तार होते हैं जिन्हें पैकेज प्रबंधन प्रणाली व्याख्या नहीं कर सकती है (जैसे कि ALPHAया तो pre-) या मौन आदेश के साथ।


14

यही युग है। यह निर्धारित करने में संस्करण को ओवरराइड करता है कि कौन से दो पैकेज नए हैं:

से deb-versionआदमी पेज:

   epoch  This is a single (generally small) unsigned integer.  It may  be
          omitted,  in  which case zero is assumed.  If it is omitted then
          the upstream-version may not contain any colons.

          It is provided to allow mistakes in the version numbers of older
          versions  of  a  package,  and also a package's previous version
          numbering schemes, to be left behind.

स्रोत

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.