2015-11-02 10 views
7

मेरे पास एक प्रोजेक्ट है जो अल्फा चरण से बाहर निकल रहा है और मैं नियमित रूप से रिलीज़ करना शुरू करने के लिए तैयार हूं। मैं जानता हूँ कि GitHub एक 'जादू' रिलीज बटन है, लेकिन मैं आम तौर पर 'जादू' पसंद नहीं है की सुविधा है कि मैं नहीं जानता कि उन्हें क्या करना:क्या गिट ऑटो को एक संस्करण संख्या फ़ाइल के लिए एक संस्करण संख्या फ़ाइल बनाने का कोई तरीका है?

https://github.com/blog/1547-release-your-software

जहां तक ​​मैं इस 'जादू बता सकते हैं 'गिटहब पर रिलीज फीचर सिर्फ कोड की एक निश्चित स्थिति के लिए स्रोत भंडार पर एक टैग बनाता है या मौजूदा टैग का उपयोग करता है। उस लिंक के अनुसार टैग नामों को अर्थपूर्ण संस्करण संख्या यानी Major.Minor.Patch ex: v10.1.2 या उस तरह की कुछ चीज़ को प्रतिबिंबित करना चाहिए।

आम तौर पर रिलीज़ करने के लिए स्वीकार किए गए गिट तरीके को टैग बनाने के लिए लगता है। मैं क्या करना चाहता हूं कि गिट के लिए संस्करण.txt या संस्करण.h फ़ाइल नामक मेरे कोड पेड़ में स्वचालित रूप से कुछ प्रकार की फ़ाइल बनाने के लिए है, जिसमें फ़ाइल बनाया गया गिट टैग का नाम है ताकि यह फ़ाइल हो सके जब उपयोगकर्ता कमांड लाइन पर myporgram --version जारी करता है तो स्वचालित रूप से सोर्स किया जाता है। अधिमानतः मैं एक ऑटो जेनरेटेड हेडर फ़ाइल चाहता हूं क्योंकि यह प्रोग्राम बनने पर बाइनरी में एकीकृत हो जाता है। क्या यह स्वचालित रूप से ऐसा करने का कोई तरीका है या क्या मुझे गिट टैग कमांड जारी करने से पहले मुझे टैग नंबर को स्वचालित रूप से फ़ाइल में पाइप करना होगा?

उत्तर

4

यहाँ अच्छा समाधान देखें: https://coderwall.com/p/mk18zq/automatic-git-version-tagging-for-npm-modules

मूल रूप से यह दूसरी तरह के आसपास है। एक टेक्स्ट फ़ाइल या हेडर फ़ाइल बनाएं। कहते हैं कि चलो: Version.h:

#define VERSION 10.1.2 

और post-commit हुक जो फ़ाइल में परिवर्तन के लिए लग रहा है बनाएँ। तैनाती के लिए: संस्करण को संशोधित करें और फ़ाइल को प्रतिबद्ध करें। हुक एक मिलान टैग बना देगा।

+0

क्या यह दूसरे तरीके से किया जा सकता है? क्या एक पोस्ट-प्रतिबद्ध हुक टेक्स्ट फ़ाइल को एक वृद्धिशील संस्करण संख्या या बस प्रतिबद्ध संख्या के साथ अपडेट कर सकता है? –

संबंधित मुद्दे