मैं hg clone
के बजाय hg pull
का उपयोग करने का सुझाव देता हूं। तो आप अपने सर्वर पर रिपॉजिटरी का दर्पण रखेंगे और इसे समय-समय पर hg pull
के साथ अपडेट करेंगे। फिर आप अपने बैकअप प्रोग्राम को का बैकअप लेने दें। जब आप hg pull
का उपयोग करते हैं तो आप नवीनतम इतिहास को स्थानांतरित कर देंगे और केवल .hg/store/data
के अंतर्गत फ़ाइलों को बदल देंगे जो वास्तव में पुल से प्रभावित होते थे।
यहां मैंने दो फाइलों के साथ एक छोटा रेपो बनाकर इसका परीक्षण किया: a.txt
और b.txt
। मैंने hg clone --noupdate
का उपयोग करके "सर्वर पर" भंडार को क्लोन किया। यह सुनिश्चित करता है कि हमारे पास सर्वर पर कोई कार्यशील प्रतिलिपि नहीं है - इसे केवल .hg
में मिले इतिहास की आवश्यकता है।
timestamps क्लोन के बाद इस तरह देखा:
% ll --time-style=full .hg/store/data
total 8.0K
-rw-r--r-- 1 mg mg 76 2009-11-25 20:07:52.000000000 +0100 a.txt.i
-rw-r--r-- 1 mg mg 69 2009-11-25 20:07:52.000000000 +0100 b.txt.i
आप बताया गया है, वे के बाद से फ़ाइलें सब सिर्फ क्लोन आपरेशन द्वारा बनाए गए सभी समान हैं। मैंने फिर मूल भंडार (क्लाइंट पर एक) बदल दिया और प्रतिबद्ध बना दिया।
% ll --time-style=full .hg/store/data
total 8.0K
-rw-r--r-- 1 mg mg 159 2009-11-25 20:08:47.000000000 +0100 a.txt.i
-rw-r--r-- 1 mg mg 69 2009-11-25 20:07:52.000000000 +0100 b.txt.i
सूचना कैसे a.txt.i
के लिए टाइमस्टैम्प अपडेट कर दिया गया है, जबकि b.txt.i
के लिए टाइमस्टैम्प अकेला छोड़ दिया गया है (मैं सिर्फ अपने लिए प्रतिबद्ध में a.txt
छुआ): changeset खींच के बाद मैं इन टाइम स्टांप मिला है।
यदि आपका बैकअप सॉफ़्टवेयर स्मार्ट है, तो यह भी ध्यान देगा कि Mercurial ने केवल a.txt.i
पर डेटा जोड़ा है। इसका मतलब है कि नई a.txt.i
फ़ाइल पुरानी a.txt.i
फ़ाइल के समान कुछ बिंदु तक समान है - इसलिए बैकअप प्रोग्राम को केवल फ़ाइल के अंतिम भाग की प्रतिलिपि बनाना चाहिए। रुनैक एक बैकअप प्रोग्राम का एक उदाहरण है जो इसे नोटिस करेगा।
स्रोत
2009-11-25 19:22:57
हाँ, यह दौड़ की स्थिति है जिसके बारे में मुझे चिंता है। क्या आप यह बताने में सक्षम होंगे कि 'एचजी रोलबैक' की आवश्यकता कब होगी? –
'hg verify' आपके भंडार में सभी चेकसम/संशोधन हैश की जांच करेगा और आपको त्रुटियों के बारे में बताएगा। – intgr
इस पर एक और टिप्पणी (आप जोड़ना चाहेंगे): 'एचजी क्लोन-यू' जाने का तरीका है, क्योंकि क्लोन की काम करने वाली प्रतिलिपि में कठोर लिंक नहीं हैं। बस भंडार करता है। –