सबवर्जन के पूर्व उपयोगकर्ता के रूप में, हमने एससीएम के लिए Mercurial में जाने का फैसला किया है और यह हमें थोड़ा उलझन में डाल रहा है। यद्यपि Mercurial एक वितरित एससीएम उपकरण है, हम सर्वर पर बैक अप लेने वाले बदलावों को रखने के लिए रिमोट रेपो का उपयोग कर रहे हैं, लेकिन हमें कुछ परेशानी की समस्याएं मिल रही हैं।एक दूरस्थ Mercurial भंडार के साथ सिंक में रहने के लिए सही (सर्वोत्तम अभ्यास?) प्रक्रिया?
उदाहरण के लिए, जब हम दो या तीन हमारे स्थानीय रेपो पर काम करते हैं, तो हम रिमोट रेपो को धक्का देते हैं, हम पाते हैं कि बहुत सारे सिर (?) बनाए जाते हैं। इसने हमें नरक को भ्रमित कर दिया और हमें इसे हल करने के लिए कुछ विलय आदि करना पड़ा।
इतने सारे सिर से बचने और रिमोट रेपो को कई डेवलपर्स के साथ सिंक करने का सबसे अच्छा तरीका क्या है?
आज, मैं इस तरह काम कर रहा है:
- बदलें एक फ़ाइल।
- रिमोट रेपो से खींचें।
- स्थानीय कामकाजी प्रति अपडेट करें।
- मर्ज करें? (क्यों?)
- स्थानीय रिपो में मेरे परिवर्तनों को कम करें।
- रिमोट रेपो पर पुश करें।
क्या यह सबसे अच्छी कार्यवाही है?
हालांकि इसने आज ठीक काम किया है, मैं यह महसूस करने में मदद नहीं कर सकता कि मैं इसे गलत कर रहा हूं! ईमानदार होने के लिए मुझे समझ में नहीं आता कि पुल चरण में क्यों विलय करना आवश्यक है क्योंकि अन्य लोग विभिन्न फाइलों पर काम कर रहे हैं?
मुझे आरटीएफएम को बताने के अलावा क्या आपको Mercurial का उपयोग करने के लिए कोई सुझाव है? हमें इतने सारे सिर क्यों मिलते हैं, इस बारे में जानकारी के लिए कोई अच्छा ऑनलाइन संसाधन?
नोट: मैंने मैनुअल पढ़ा है लेकिन यह वास्तव में ज्यादा जानकारी नहीं देता है और मुझे नहीं लगता कि मैं मिनट में एक और पुस्तक शुरू करना चाहता हूं।
http://hginit.com पर जोएल स्पॉल्स्की का ट्यूटोरियल सीखने के लिए एक शानदार जगह है कि कैसे काम करता है, और जहां तक मुझे याद है, इसमें कई सिर और दर्द रहित विलय के बारे में अच्छी व्याख्या शामिल है http://hginit.com/ 04.html –
आपको चरण 1 और 2 के बीच कोई प्रतिबद्धता होनी चाहिए। चरण 5 पर प्रतिबद्धता केवल तभी जरूरी होनी चाहिए जब आपको फ़ाइलों को मर्ज करने की आवश्यकता हो –