2009-09-09 8 views
6

मुझे 'पुल' कमांड दिखाई दे रहा है और यह सोच रहा है कि यह 'क्लोन' से अलग कैसे है। दोनों शब्द कुछ रिमोट रिपोजिटरी से कोड पुनर्प्राप्त करने का संकेत देते हैं। क्या यहां कुछ सूक्ष्म भेद है?एक Mercurial स्रोत-नियंत्रण भंडार में 'क्लोन' के लिए समानार्थी 'खींच' है?

+1

चूंकि आप बस Mercurial के साथ शुरू होने लगते हैं, तो आपको शायद इस स्टैक ओवरफ़्लो प्रश्न के माध्यम से पढ़ना चाहिए: http://stackoverflow.com/questions/1170338/mercurial-for-beginners-the-definitive-practical-guide You "Mercurial: Definitive Guide" के पहले कुछ अध्यायों के माध्यम से भी पढ़ना और/या काम करना चाहिए: http://hgbook.red-bean.com/read/ अंत में, आप http: // पर एक खिलौना प्रोजेक्ट बनाना चाहते हैं Mercurial के साथ काम करने के लिए कुछ अभ्यास पाने के लिए bitbucket.org/। – las3rjock

+0

ग्रेट लिंक। बहुत उपयोगी। धन्यवाद। – tent

+0

http://hginit.com/ एक उत्कृष्ट ट्यूटोरियल भी प्रदान करता है। जब मैं अपनी टीम में शामिल होता हूं तो मेरे सभी नए कर्मचारी और इंटर्न इसके माध्यम से काम करते हैं। – JSmitty

उत्तर

11

hg clone यह है कि आप रिमोट रिपोजिटरी की स्थानीय प्रति कैसे बनाते हैं। सबवर्सन समतुल्य svn checkout है।

hg pull किसी अन्य भंडार से परिवर्तन खींचता है। hg update उन परिवर्तनों को स्थानीय भंडार में लागू करता है। hg pull -uhg pull; hg update के बराबर है। hg pull -u के समतुल्य सबवर्सन svn update है।

19

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

हालांकि, आप सही हैं कि क्लोन और पुल के बीच समानताएं हैं: वे दोनों भंडारों के बीच इतिहास हस्तांतरण करते हैं। आप पहली बार

hg clone https://www.mercurial-scm.org/repo/hg/ 

क्लोन तो ऐसा करने

hg init hg 
cd hg 
hg pull https://www.mercurial-scm.org/repo/hg/ 
hg update 

आप दोनों ही मामलों में ठीक उसी इतिहास के रूप में ठीक उसी प्रभाव पड़ता है।

[paths] 
default = https://www.mercurial-scm.org/repo/hg/ 

यह वही एक URL निर्दिष्ट किए बिना आप भंडार में hg pull करने की सुविधा देता है: क्लोन आदेश के बाद से यह भी .hg/hgrc फ़ाइल आप के लिए सेटअप करने के लिए डिफ़ॉल्ट पथ को संपादित करता है, और अधिक सुविधाजनक है, हालांकि। क्लोन का उपयोग करने का एक अन्य लाभ यह है कि जब आप उसी डिस्क पर रिपॉजिटरीज़ के साथ काम करते हैं: hg clone a bb से डिस्क स्पेस के मामले में बहुत तेज़ और सस्ता होगा a के साथ इतिहास साझा करेगा। यह सभी प्लेटफॉर्म (विंडोज, लिनक्स, मैक) पर हार्डलिंक्स और कामों का उपयोग करके किया जाता है।

2

क्लोन एक मौजूदा भंडार की एक प्रति के रूप में एक नया भंडार बनाता है।

एक अन्य भंडार से सभी परिवर्तनों (पहले से मौजूद नहीं) आयात को मौजूदा भंडार में आयात करता है।

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