मैं Mercurial के लिए काफी नया हूं, मैंने इस विषय पर बहुत कुछ पढ़ा है लेकिन मुझे एक स्पष्ट उत्तर नहीं मिला है।सबरेपो, एचजी क्लोन और सिम्लिंक
The mercurial guide कहता है: "दक्षता के लिए, जब भी स्रोत और गंतव्य एक ही फाइल सिस्टम पर होते हैं तो क्लोनिंग के लिए हार्डलिंक्स का उपयोग किया जाता है (ध्यान दें कि यह केवल भंडार डेटा पर लागू होता है, न कि कार्यशील निर्देशिका में)।"
Repository wiki page कहता है: "रिपॉजिटरी रूट में .hg निर्देशिका के साथ सह-अस्तित्व में मौजूद सभी फ़ाइलें और निर्देशिका कार्यशील निर्देशिका में रहने के लिए कहा जाता है"।
अब, एक मुख्य रेपो में "लिंक" एक subrepo लिए मुझे क्या करना:
hg init main
cd main
echo subrepo = ../subrepo > .hgsub
hg clone ../subrepo subrepo # (1)
hg add
hg ci -m "initial rev of the main repo"
परिभाषा ऊपर का मतलब है कि मैं वास्तव में एक प्रतिलिपि subrepo
की जब मैं प्रदर्शन (1) बना रहा हूं करता है? ? या मैं ../subrepo
पर सिर्फ एक सिम्लिंक बना रहा हूं? ls
के आउटपुट के अनुसार, यह एक वास्तविक प्रति है। लेकिन यह मेरे लिए बहुत अजीब लगता है ... अगर कोई इस विषय पर थोड़ा सा प्रकाश डाल सकता है, तो मैं सराहना करता हूं।
बस एक नाइटपिक क्योंकि आपने दोनों शब्दों का उपयोग किया जैसे कि वे अदला-बदले हैं: [हार्ड लिंक प्रतीकात्मक लिंक नहीं हैं] (http://linuxgazette.net/105/pitcher.html)। अंतर मूल रूप से है कि हार्ड लिंक फाइल सिस्टम के भीतर हैं और ब्रेक नहीं कर सकते हैं, जबकि प्रतीकात्मक लिंक में केवल एक पथ होता है और अन्य फाइल सिस्टम को इंगित कर सकता है। Mercurial केवल कड़ी लिंक का उपयोग करता है। –