मेरी राय में, लगभग किसी भी रिलीज संख्या योजना को कम या ज्यादा कम से कम काम करने के लिए बनाया जा सकता है। जिस प्रणाली पर मैं काम करता हूं वह 11.50.यूसी 3 जैसे संस्करण संख्याओं का उपयोग करता है, जहां यू 32-बिट यूनिक्स इंगित करता है, और सी 3 मामूली संशोधन (फिक्स पैक) संख्या है; अन्य प्लेटफार्म प्रकारों के लिए अन्य अक्षरों का उपयोग किया जाता है। (मैं इस योजना की सिफारिश नहीं करता, लेकिन यह काम करता है।)
कुछ सुनहरे नियम हैं जिन्हें अब तक नहीं बताया गया है, लेकिन जो लोगों ने चर्चा की है, उनमें अंतर्निहित हैं।
- एक ही संस्करण को दो बार रिलीज़ न करें - एक बार संस्करण 1.0.0 किसी को भी जारी किया जाता है, इसे कभी भी पुनः जारी नहीं किया जा सकता है।
- रिलीज संख्याओं को एकान्त रूप से बढ़ाना चाहिए। यही है, संस्करण 1.0.1 या 1.1.0 या 2.0.0 में कोड हमेशा संस्करण 1.0.0, 1.0.9, या 1.4.3 (क्रमशः) से बाद में होना चाहिए।
अब, व्यवहार में, लोग पुराने संस्करणों के लिए फिक्स जारी करने के लिए है, जबकि नए संस्करण उपलब्ध हैं की क्या ज़रूरत है - जीसीसी देखते हैं, उदाहरण के लिए:
- जीसीसी 3.4.6 4.0.0 के बाद जारी किया गया था, 4.1.0 (और AFAICR 4.2.0), लेकिन यह जीसीसी 4.x में जोड़े गए अतिरिक्त विशेषताओं को जोड़ने के बजाय जीसीसी 3.4.x की कार्यक्षमता जारी रखता है।
तो, आपको अपनी संस्करण संख्या योजना को ध्यान से बनाना होगा।
एक अन्य बिंदु है जिस मुझे पूरा विश्वास है में:
- रिलीज़ संस्करण संख्या मुख्यमंत्री (VCS) सिस्टम संस्करण नंबर से संबंधित नहीं है, तुच्छ कार्यक्रमों के अलावा। एक से अधिक मुख्य स्रोत फ़ाइल वाले सॉफ़्टवेयर का कोई भी गंभीर टुकड़ा किसी एकल फ़ाइल के संस्करण से संबंधित संस्करण संख्या होगा।
एसवीएन के साथ, आप एसवीएन संस्करण संख्या का उपयोग कर सकते हैं - लेकिन शायद यह बहुत अप्रत्याशित रूप से नहीं बदलेगा।
जिन चीजों के साथ मैं काम करता हूं, उनके लिए संस्करण संख्या पूरी तरह से राजनीतिक निर्णय है।
संयोग से, मुझे सॉफ़्टवेयर पता है जो संस्करण 1.00 से 9.53 तक रिलीज़ के माध्यम से चला गया, लेकिन फिर यह 2.80 हो गया।यह एक सकल गलती थी - मार्केटिंग द्वारा निर्धारित। अनुमोदित, सॉफ़्टवेयर का संस्करण 4.x अप्रचलित है, इसलिए यह तुरंत भ्रम के लिए नहीं बना था, लेकिन सॉफ्टवेयर का संस्करण 5.x अभी भी उपयोग में है और बेचा गया है, और संशोधन पहले ही 3.50 तक पहुंच चुके हैं। मैं बहुत चिंतित हूं कि मेरे कोड को 5.x (पुरानी शैली) और 5.x (नई शैली) दोनों के साथ काम करना है, जब अपरिहार्य संघर्ष होता है। मुझे लगता है कि मुझे आशा है कि वे 5x तक बदलने पर डिलिवरी करेंगे। पुराने 5.x वास्तव में मर चुका है - लेकिन मैं आशावादी नहीं हूं। मैं 3.50 कोड का प्रतिनिधित्व करने के लिए 9.60 जैसे कृत्रिम संस्करण संख्या का भी उपयोग करता हूं, ताकि मैं if VERSION > 900
परीक्षण कर सकूं, ऐसा करने के बजाय: if (VERSION >= 900 || (VERSION >= 280 && VERSION < 400)
, जहां मैं 9 00 तक संस्करण 9.00 का प्रतिनिधित्व करता हूं। और फिर महत्वपूर्ण बदलाव आया है एरिक रेमंड Software Release Practice HOWTO नामकरण पर (लिंक किए गए) अनुभाग सहित (प्रदान करता है: - संस्करण 3.00.xC3 में मेरी योजना नाबालिग रिहाई के स्तर पर परिवर्तन का पता लगाने के लिए ... भुनभुनाना ... भुनभुनाना ...
नायब विफल रहता है संख्या) रिलीज।
पहले से ही चर्चा की: [http://stackoverflow.com/questions/65718/what-do-the-numbers-in-a-version-typically-represent-ie-v1901](http://stackoverflow। कॉम/प्रश्न/65718/क्या-क्या-संख्या-में-संस्करण-आम तौर पर प्रतिनिधित्व-यानी-v1901) – Kev