के साथ कोड को सबसे अच्छी तरह से साझा करने के लिए कैसे करें मेरे पास कई अलग-अलग परियोजनाएं हैं जो कुछ सामान्य कोड साझा करती हैं। गिट में और विशेष रूप से स्मार्टगिट में इसे पूरा करने के लिए सबसे अच्छा अभ्यास क्या है?स्मार्टगिट
एक विशाल भंडार
प्रत्येक परियोजना के लिए भंडार है, और साझा कोड के लिए भंडार है में सब कुछ है, और Git Submodules का उपयोग करें।
प्रत्येक प्रोजेक्ट के लिए एक संग्रह है, और साझा कोड के लिए एक भंडार है, और Git Subtrees का उपयोग करें। क्या कोई मुझे बता सकता है कि यह SmartGit द्वारा समर्थित है, और यह कैसे प्राप्त किया जा सकता है?
इन तरीकों के साथ संभावित नुकसान क्या हैं, और स्मार्टगिट के साथ सर्वोत्तम प्रथाएं क्या हैं?
+1 में मदद करता है, बहुत उपयोगी है। क्या पहले विकल्प के लिए कोई नुकसान है? जब भी मैं अपनी परियोजनाओं में से एक का संस्करण जारी करता हूं, तो क्या मैं बस पूरी रिपोजिटरी को शाखाबद्ध कर दूंगा? – Eric
पूरे भंडार को ब्रांच करना अच्छी तरह से काम करेगा, गिट उदा। शाखा प्रोजेक्ट जैसे 'प्रोजेक्ट 1/शाखा 1' (आंतरिक रूप से:/refs/head/project1/branch1) की अनुमति देता है। – mstrap
एक बड़े भंडार के साथ मुख्य नुकसान यह है कि इसे बाद में अलग नहीं किया जा सकता है (AFAIK)। परियोजनाओं की संख्या के बारे में स्केलेबिलिटी में कोई समस्या नहीं होगी क्योंकि गिट बड़े भंडारों के लिए भी कुशल है। हालांकि SmartGit के ताज़ा समय बढ़ते काम के पेड़ के आकार के साथ बढ़ेगा (ताज़ा करने की आवश्यकता अक्सर होती है)। बस आपको एक विचार देने के लिए: यदि आपके एक बड़े भंडार में लगभग 10 के फाइलें होंगी, तो आपको इसके बारे में परेशान करने की आवश्यकता नहीं है। – mstrap