2013-06-28 8 views
6

मैंने कोड को अलग कर दिया है जिसे मैं इस बिंदु पर एक मैवेन प्रोजेक्ट से कई मैवेन प्रोजेक्ट तक बना रहा हूं। जिन परियोजनाओं के साथ मैंने समाप्त किया है, वे भविष्य की परियोजनाओं द्वारा उपयोग किए जा सकते हैं, वे बहुत अधिक पुस्तकालय हैं। मैं इस बिंदु तक एक ही गिट भंडार का उपयोग कर रहा हूं क्योंकि सब कुछ एक परियोजना में था। हालांकि मॉड्यूलरिसेशन के बाद मुझे आश्चर्य है कि मुझे प्रत्येक मेवेन प्रोजेक्ट के लिए गिट रिपोजिटरी बनाना चाहिए। मुझे लगता है कि ऐसा करने का सही तरीका है, लेकिन मैं यह सुनना चाहता हूं कि दूसरों के बारे में क्या सोचते हैं। चूंकि परियोजनाएं स्टैंडअलोन घटकों के रूप में काम कर सकती हैं, इसलिए वे अपने गिट भंडार के लायक भी हैं? एक और विकल्प परियोजना के लिए उसी गिट भंडार में सभी परियोजनाओं को विकसित करना होगा जो मैं वर्तमान में काम करता हूं।मॉड्यूलर मेवेन प्रोजेक्ट्स और एकाधिक गिट रिपॉजिटरीज

+0

आप इसका उपयोग कैसे करना चाहते हैं, इस निर्णय को समान रूप से प्रभावित करेगा। क्या आप मॉड्यूल को स्टैंडअलोन के रूप में फोर्क करने की अधिक संभावना रखते हैं? – velo

+0

यह वास्तव में नीचे आता है, "आप इसे कैसे करना चाहते हैं?"। इसके लिए कोई "सही" जवाब नहीं है। किसी भी तरह से ठीक है। –

उत्तर

2

चूंकि परियोजनाएं स्टैंडअलोन घटकों के रूप में काम कर सकती हैं, इसलिए वे अपने स्वयं के गिट भंडार के लायक भी हैं?

यह वास्तव में (शाखाओं के सेट और टैग सहित)

इस अतिरिक्त एक Git रेपो, जो अपनी ही स्वतंत्र इतिहास के साथ फ़ाइल की एक सुसंगत समूह का प्रतिनिधित्व होगा निर्धारित करने में मुख्य मापदंड में से एक है लाभ यह है कि के आधार पर कुछ अन्य परियोजना पर नहीं बल्कि आपके सभी घटकों को पूर्ण अद्वितीय गिट रेपो क्लोन नहीं करना होगा (जिसमें सब कुछ होगा, जिसमें घटकों की आवश्यकता नहीं है)।
वह अन्य परियोजना आवश्यक घटकों के सटीक सबसेट से क्लोन और लाभ प्राप्त कर सकती है।

इसे component approach, as opposed to the system approach कहा जाता है।

+1

हां बिल्कुल। मैं इसमें जोड़ दूंगा कि आप शायद किसी भी मूल पोम को खत्म करना चाहते हैं जो आपके पास हो सकता है। इस तरह, आप वास्तव में दोनों मॉड्यूल स्वतंत्र रूप से विकसित कर सकते हैं। यदि यह असुविधाजनक है क्योंकि आपके मॉड्यूल वास्तव में कसकर युग्मित होते हैं, तो मॉड्यूलरलाइजिंग इससे हल होने की तुलना में अधिक समस्याएं पैदा कर रहा है। यह जावा में एक विरोधी पैटर्न है जहां लोग प्रत्येक पैकेज को मॉड्यूल में बदलते हैं और रिलीज, बिल्ड इत्यादि करने में बहुत अधिक समय व्यतीत करते हैं। –

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