2011-03-06 12 views
5

का उपयोग कर एंड्रॉइड प्रोजेक्ट का प्रबंधन करना मेरा मानना ​​है कि मेरे पास एक बहुत ही आम समस्या है जो डेवलपर्स को उनके ऐप्स के कई संस्करणों के साथ प्रभावित करती है (मेरे मामले में मेरे पास दो हैं: भुगतान एक और एक निःशुल्क)। दोनों संस्करणों का प्रबंधन करने के लिए मैं 2 अलग-अलग शाखाओं के साथ एक ही गिट प्रोजेक्ट का उपयोग करता हूं: मुफ़्त और भुगतान हालांकि मेरे स्रोत कोड पैकेज नाम एक दूसरे से (अपेक्षित के रूप में) भिन्न हैं, और पैकेज नामों के लिए निर्देशिका नाम मैपिंग करने के जावा प्रतिबंधों के साथ समस्या उत्पन्न होती है: प्रत्येक शाखा के साथ फ़ाइलों को एक निश्चित निर्देशिका के अंतर्गत जोड़ने के लिए गिट को कैसे बताना है?गिट और ग्रहण

मैं आपको एक उदाहरण देता हूँ: मैं दो शाखाएं है:

  1. मास्टर
  2. मुक्त

मास्टर मेरे स्रोत कोड com.zemariamm किया जा रहा है, फिर भी में " मुक्त "शाखा स्रोत कोड" com.zemariamm.free "के अंतर्गत है, मैं गिट को" उसे बताएं "को कैसे कॉन्फ़िगर कर सकता हूं कि निर्देशिका com.zemariamm (शाखा मास्टर में) के अंतर्गत स्रोत कोड निर्देशिका com.zemariamm के अंतर्गत स्रोत कोड में मानचित्र मुफ्त (शाखा मुक्त में)?

धन्यवाद अग्रिम में इतना, Ze

+0

क्या आप 'फ्री' और 'पेड' पैकेज में डुप्लिकेट करने के बजाए सभी सामान्य कोड पुस्तकालयों को साझा नहीं कर सकते हैं? – Eric

+0

आपका क्या मतलब है? स्रोत कोड के कुछ हिस्सों का उपयोग करके दो अलग-अलग परियोजनाएं होने के बाद? चीयर्स :) – user361526

उत्तर

2

सिद्धांत रूप में, आप Git में कुछ भी कॉन्फ़िगर नहीं होगा:
तो सामग्री com.zemariamm.free.MyClass की बहुत com.zemariamm.MyClass के समान है, Git से जोड़ने के लिए सक्षम होना चाहिए दो अलग-अलग शाखाओं में दो निर्देशिकाओं के बीच MyClass फ़ाइल का इतिहास।

विशेष रूप से, free से master को मर्ज नए विकास ने com.zemariamm.free.MyClass से com.zemariamm.MyClass को रिपोर्ट करनी चाहिए (लाइनों, जोड़ा संशोधित या MyClass को निकाला गया)।

कि अगर MyClass ही काम करता है "पर्याप्त दो शाखाओं हालांकि बीच इसी तरह:
देख" है How does Git track history during a refactoring ? "

0

क्यों नहीं रख बस डाल दोनों स्वतंत्र और एक परियोजना में कोड का भुगतान किया, बल्कि दो परियोजनाओं का उपयोग करने से?

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