में दो परियोजनाओं के बीच एक कोड साझा करना मेरे पास दो कड़ाई से संबंधित परियोजनाएं (ए और बी) हैं जो कुछ स्रोत कोड (एस) साझा करती हैं। उनमें से दोनों एक ही समय में जारी किए जाएंगे और रिलीज़ संस्करण हमेशा साझा कोड के समान संस्करण का उपयोग करना चाहिए। साझा कोड एस अक्सर बदल दिया जाएगा।गिट
इसलिए, यह इस तरह से कुछ समय लगेगा:
- एक संस्करण 1 एस संस्करण 1
- बी संस्करण 1 एस संस्करण 1
- एक संस्करण 2 एस संस्करण का उपयोग करता का उपयोग करता है का उपयोग करता है 2
- बी संस्करण 2 एस संस्करण 2
गिट (और/या कुछ उपकरण जो गिट का उपयोग करते हैं) के साथ इसे संभालने का सबसे अच्छा तरीका क्या है?
यहाँ मेरी चिंताएं हैं:
- प्रोजेक्ट ए और परियोजना बी अलग खजाने में होना चाहिए (वे से संबंधित हैं, लेकिन मैं उन दोनों के बीच कोड के मुक्त प्रवाह के लिए नहीं करना चाहते हैं)
- तो एक एक प्रोजेक्ट में साझा किया गया साझा कोड, इसे स्वचालित रूप से किसी अन्य में अपडेट किया जाना चाहिए (मैं ऐसी स्थिति नहीं लेना चाहता हूं जब कोई डेवलपर कुछ करने के लिए भूल गया हो और साझा कोड के पुराने संस्करण को समाप्त कर दे)।
जैसा कि मैं समझता हूं कि कैनोलिक उत्तरों में से एक है "git submodule का उपयोग करें"। हालांकि, मैंने इस दृष्टिकोण के बारे में कुछ criticism पढ़ा है। मुझे लगा जैसे यह साझा पुस्तकालयों के लिए अधिक डिज़ाइन किया गया था जो शायद ही कभी बदलते हैं।
एक और दृष्टिकोण जो मैं git subtree
उपयोग कर रहा था पढ़ा और वहाँ कम लोकप्रिय तरीकों में से जोड़ी हैं: Repo, GitSlave
क्या सबसे अच्छा तरीका कोड साझा करने के इस प्रकार संभाल करने के लिए हो सकता है?
लिंक अच्छे नहीं हैं, मैंने सबट्री तय की है लेकिन अन्य अनुमान नहीं लगा सकते हैं (गिट सबमिशन और आलोचना का उपयोग करें) – CharlesB
धन्यवाद। मैंने एक को छोड़कर सभी लिंक तय किए। अगर मैं इसे सम्मिलित करता हूं, किसी कारण से यह गलत लिंक से जुड़ा हुआ है। –
आप इसे सीधे मार्कडाउन कोड – CharlesB