@Mot से पूरी तरह सहमत हैं।
वही सवाल सुनकर अच्छा लगा।
हमारी टीम भी की तुलना में अधिक यूनिवर्सल शाखाओं में मॉडल के लिए शिकार किया गया था सफल नहीं। Ie @Mot जैसा कि ऊपर उल्लेख किया गया है - मुख्य विचार रिलीज को सपोर्ट करने के लिए अतिरिक्त रिपॉजिटरी शुरू करने से बचना है- * अलग-अलग *। शाखाओं में। यह स्थिर उदाहरण के लिए kernel.org द्वारा किया जाता है। लेकिन कर्नेल.ऑर्ग मुझे लगता है कि डाउनलोड किए गए आकारों को न्यूनतम करने के लिए करता है।
मेरे लिए ऐसा लगता है कि विकास के लिए मेनलाइन के रूप में मास्टर होना अधिक साफ है ।
रिलीज में कुछ संघर्ष भी हैं- * मॉडल को मास्टर करने के लिए विलय करना और बाद में विचार के साथ टैग करना
स्वचालित रूप से हमारे उत्पादन सर्वर पर हमारे सॉफ़्टवेयर को बनाने और रोल-आउट करने के लिए एक Git हुक स्क्रिप्ट का उपयोग करें, हर बार मास्टर पर एक कमिट था
कारण परिष्करण (विलय और टैगिंग) एक परमाणु लेनदेन नहीं है:
$ git checkout master
Switched to branch 'master'
$ git merge --no-ff release-1.2
Merge made by recursive.
(Summary of changes)
$ git tag -a 1.2
और अगर git हुक का निर्माण ऑटोमैटिक वर्जनिंग सपोर्ट के साथ होता है:
$git describe --tags --long >.ver
तब एक गलत संस्करण के लिए बनाया जाना संभव है:
$ git merge --no-ff release-1.2
मुझे पता है कि सक्सेसफुल में संस्करण कुछ बम्प-संस्करण प्रक्रिया का परिचय देता है,
लेकिन यह स्वचालित नहीं है।
तो राशि के लिए - हम रिलीज के लिए शाखा मॉडल से जुड़े महत्वपूर्ण अंतर- * विलय और टैगिंग कर रहे हैं: - इसकी शाखा बनाने पर रिलीज को टैग करना - भविष्य में उन्हें बनाए रखने में सक्षम करने के लिए रिलीज की शाखा रखें