मर्क्युरियल नेस्टेड खजाने की अनुमति नहीं है, लेकिन उनके लिए कम से कम एक कारण है:
कल्पना कीजिए कि आप एक परियोजना में काम कर रहे हैं:/MyProject। इस फ़ोल्डर में आप सब कुछ डालते हैं: कोड, दस्तावेज़ीकरण, परीक्षण, आदि
आप अपने काम का बैकअप लेना चाहते हैं क्योंकि यह बहुत महत्वपूर्ण है, इसलिए आप/MyProject के लिए एक संग्रह बनाते हैं। फिर, ओवरटाइम आप/MyProject के विकास को बचाने के लिए बंडलों का उपयोग करते हैं और उन्हें यूएसबी फ्लैश मेमोरी में बैक अप लेते हैं ताकि आप अपनी हार्ड ड्राइव टूटने पर बस सबकुछ ठीक कर सकें।
याद रखें कि/MyProject में सबकुछ शामिल है। और उन सभी चीजों के बीच, मुख्य कोड और कुछ सहायक परियोजनाएं हैं। आप एक सहायक परियोजना की प्रगति को ट्रैक करना चाहते हैं जो/MyProject/AuxiliaryProject में है, इसलिए आप अपने विकास को ट्रैक करने के लिए Mercurial का उपयोग करते हैं।
इसके अलावा, आप मुख्य कोड के लिए एक अलग भंडार करना चाहते हैं:/MyProject/मुख्य
इस स्थिति में आप नेस्टेड खजाने हैं: बैक अप करने के लिए बंडलों और बच्चे खजाने का उपयोग कर सब कुछ में सक्षम होने के लिए एक बड़ा एक प्रत्येक सबप्रोजेक्ट के प्रबंधन के लिए।
मुझे लगता है कि एक संग्रह को प्रारंभ करते समय Mercurial उपयोगकर्ता को कई विकल्प देना चाहिए। उदाहरण के लिए: - नेस्टेड रिपॉजिटरीज को अनदेखा करें - नेस्टेड रिपॉजिटरीज शामिल करें लेकिन एचजी फ़ोल्डर्स को अनदेखा कर रहा है (यानी ऐसा लगता है कि कोई नेस्टेड रिपॉजिटरीज़ नहीं है लेकिन नेस्टेड रेस्पॉजिटरीज़ में मौजूद जानकारी को अनदेखा न करें)। - नेस्ट शामिल खजाने और भी शामिल .Hg फ़ोल्डर (बैकअप के प्रयोजन के लिए समझ में आता है)
--------- संपादित करें: https://www.mercurial-scm.org/wiki/subrepos
: Subrepositories एक सुविधा कार्य प्रगति पर है
इसके अलावा, "वन" नामक एक एक्सटेंशन है जो भविष्य में अप्रचलित हो सकता है: https://www.mercurial-scm.org/ForestExtension
स्रोत
2010-06-28 12:07:11
? मैं इस धारणा के तहत हूं कि Mercurial स्वचालित रूप से इसके मूल पदानुक्रम के नीचे अन्य mercurial निर्देशिकाओं को अनदेखा करता है। (वास्तव में यह किया है) –
सही आप हैं: यह subordinates अनदेखा करता है। हालांकि Mercurial के डिफ़ॉल्ट terse आउटपुट दिया, मैं अभी भी बनाए रखा है कि आप खुद को भ्रम खरीदना होगा। – msw