2012-02-03 3 views
8

मेरे पास गिट रिपॉजिटरीज का एक संग्रह है जो स्वतंत्र रूप से संस्करणित है लेकिन एक दूसरे से संबंधित है। उदाहरण के लिए, एक सुविधा जोड़ने पर मुझे साझा लाइब्रेरी में कार्यक्षमता जोड़नी पड़ सकती है, और फिर उस कार्यक्षमता का लाभ उठाने के लिए एक एप्लिकेशन या सेवा का विस्तार करना पड़ सकता है।क्या कई रिपोजिटरी को सुसंगत रूप से प्रबंधित करना संभव है?

वर्तमान में, मुझे उस सुविधा पर काम करते समय स्पर्श करने वाले प्रत्येक संग्रह पर एक शाखा बनाना होगा। मैं क्या करना चाहता हूं, हालांकि, एक ही समय में उन एकाधिक भंडारों को ब्रांच करके और विलय करके प्रक्रिया को सरल बनाना है (शाखा को भूलने की संभावना को कम करने के लिए, या एक भंडार में विलय/विलय करना, लेकिन दूसरे नहीं)।

क्या एक बार में कई रिपॉजिटरीज़ को शाखा बनाने और मर्ज करने का कोई आसान तरीका है, या क्या यह एक सहायक है सहायक स्क्रिप्ट के संग्रह के लिए उपयुक्त है? यदि उत्तरार्द्ध, क्या कोई स्क्रिप्ट उपलब्ध है जो पहले से ही इसे पूरा कर रही है?

+2

[कई गिट रिपॉजिटरीज़ प्रबंधित करना] के संभावित डुप्लिकेट (http://stackoverflow.com/questions/816619/managing-many-git-repositories) –

उत्तर

7

वहाँ एक साथ कई खजाने से निपटने के लिए एक अंतर्निहित तरीका नहीं है, और यदि आप Git की वितरित प्रकृति के बारे में लगता है, वहाँ वास्तव में लेकिन सामाजिक परंपरा कि परिभाषित कर सकते हैं कि कुछ भी नहीं है। (विचार करें, अगर कोई आपको एक भंडार में खींचता है, लेकिन दूसरे के लिए एक और रिमोट - क्या आपके पास यह समेकन हो सकता है?)

आपको mr जैसे टूल मिल सकते हैं, जो एक साथ कई रिपोजिटरी के साथ काम करता है, सहायक ।

यदि आपके पास वास्तव में ऐसी चीजें हैं जो कसकर बंधी हुई हैं, हालांकि, मैं आपको सलाह दूंगा कि आप उन्हें एक भंडार में डाल दें। इस तरह आप किसी भी कदम को नहीं भूल सकते हैं, क्योंकि वे एक परमाणु ऑपरेशन में होते हैं।

यदि आपका कोड वास्तव में एक साथ बंधे हुए नहीं है, तो फिर, "बिल्कुल उसी समय शाखा होना चाहिए" धारणा छोड़ दें और आप खुश रहेंगे।

+1

+1 एमआर बहुत बढ़िया है, हालांकि यह सब ठीक से काम नहीं करता है विंडोज – stijn

4

आप रेपो उपकरण का उपयोग कर सकते हैं: https://gerrit.googlesource.com/git-repo/

  • एक आदेश
  • साथ कई परियोजनाओं पर एक ही शाखा की स्थापना की कई खजाने (शाखाओं, मर्ज ना किए गए प्रतिबद्ध) की
  • दृश्य राज्य खजाने के सेट को प्रबंधित (क्लोन, सिंक, आदि) प्रकट फाइलों के साथ
  • अन्य बिंदास सामग्री के बहुत सारे
+0

पर लिंक मर चुका है – xenoterracide

+0

मैंने लिंक अपडेट किया। –

2

एक इसके अलावा, एक नज़र डालें: https://github.com/fabioz/mu-repo - यह एक उपकरण है जैसे कि श्रीमान और रेपो क्योंकि मुझे उन लोगों में से एक नहीं मिल सका जो मुझे चाहिए :)

0

बस एक विचार के रूप में। मैंने खुद से यह कोशिश नहीं की है, लेकिन मैं कुछ समय पहले इस सुविधा में आया था।

git submodule foreach --recursive <command> 

एक नया "रूट" भंडार को submodule के रूप में सभी वांछित खजाने जोड़ सकते हैं और उपयोग करने के लिए निम्न आदेश आप इस के लिए मदद और कैसे submodules से निपटने के लिए विचार-विमर्श कर सकते हैं की कोशिश करो। आप जो भी आदेश चाहते हैं उसका उपयोग कर सकते हैं। गिट और गैर-गिट कमांड।

0

Android repo tool एकाधिक भंडारों में फीचर शाखाओं के निर्माण का प्रबंधन करता है। हालांकि repo upload कमांड केवल गेरिट कोड समीक्षा को प्रकाशित कर सकता है।

यदि आप गिटहब या गिटलैब जैसे साधारण गिट रिपोजिटरी मैनेजर का उपयोग करते हैं, तो repo upload काम नहीं करेगा; आपको nonxistent repo push कमांड की आवश्यकता है। मैंने में repo push लागू किया। हम इसे उत्पादन में उपयोग करते हैं।

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

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