आप निम्न समस्या के लिए Mercurial का उपयोग कैसे करेंगे।निजी और सार्वजनिक संस्करण को अलग करने के लिए Mercurial का उपयोग
मान लीजिए कि मेरे पास लाइब्रेरी कोर है। अब मैं एक्सटेंशन नामक उस लाइब्रेरी में एक एक्सटेंशन विकसित करना चाहता हूं। मैं विस्तार से कोर को भौतिक रूप से अलग रखना चाहता हूं, यानी मान लें कि कोर एक ओपन सोर्स लाइब्रेरी है और एक्सटेंशन एक निजी पुस्तकालय है जो कोर पर बनाता है (शायद इसमें कुछ सामान शामिल हैं जो मैं व्यक्तिगत रखना चाहता हूं। जो भी हो।)। जाहिर है, मैं विस्तार से पूरे स्रोत को सार्वजनिक भंडार में धक्का नहीं देना चाहता हूं। लेकिन दूसरी ओर मैं एक्सटेंशन से कोर में कुछ बदलावों को धक्का देना चाहूंगा (यदि मैं कोर में एक्सटेंशन का "दान" करने का निर्णय लेता हूं) या इसके विपरीत (यदि मैं बग फिक्स को शामिल करना चाहता हूं, तो कहें)।
आप इस बारे में कैसे जाएंगे, कोर को एक्सटेंशन को लीक करने के जोखिम को कम करने के जोखिम को कम करने के बाद (इतिहास को सार्वजनिक सर्वर पर धक्का दिया जाता है, वहां वापस नहीं जा रहा है!), कुछ बदलावों के लिए ऐसा करने के लिए लचीला रहने के दौरान। शाखाओं? क्लोन? MQS? कुछ और?
मैं वर्तमान में केवल क्लोनिंग रिपॉजिटरीज़ से परिचित हूं, और इसकी सादगी की तरह बहुत अधिक हूं।
संपादित करें: मैं इस योजना के साथ आया, लेकिन मैं इसे विंडोज़ के तहत काम करने के लिए काफी कुछ नहीं कर सकता। दो भंडार (कोर और एक्सटेंशन)। विस्तार में दो शाखाएं, कोर और एक्सटेंशन भी हैं। अब, आप Mercurial में एक हुक प्रति रिपोजिटरी पंजीकृत कर सकते हैं, इसलिए मैं कोर रेपो में 'pretxnchangegroup' हुक पंजीकृत करना चाहता हूं जो एक्सटेंशन शाखा से चेकइन को अस्वीकार करता है, जैसा कि in the Mercurial book समझाया गया है। सिवाय इसके कि मुझे खिड़कियों के नीचे काम करने के लिए काफी कुछ नहीं मिलता है। तो:
- किसी के पास विंडोज़ के तहत इस तरह कुछ (वास्तव में, किसी भी हुक जो संक्रमण के परिणाम को बदलता है) का उदाहरण है?
- मैं अभी भी विस्तार से कोर शाखा में चेरीपिक परिवर्तनों में ट्रांसप्लेंट का उपयोग करने में सक्षम हूं, है ना?
आप हुक को * केवल * कोर को कैसे बदल सकते हैं? क्या यह 0 से बाहर निकल जाएगा || बाहर निकलें 1? –