परिदृश्य: मैं एक कार्यक्रम 'विरासत में मिला है "कर दिया है, मर्क्युरियल में रखा है कि केवल विशेष फ़ाइलों के लिए विशिष्ट तोड़ मरोड़ कि में जाँच कर रहे हैं के साथ अपने सिस्टम पर काम करता है मैं नहीं में इन तोड़ मरोड़ जाँच करना चाहते हैं Mercurial एक रिवर्स-पैच कर सकते हैं?
।। इसका सबसे हालिया समाधान यह है कि इन tweaks युक्त एक mercurial पैच फ़ाइल (एचजी diff> पैचफाइल) बनाने के लिए है; जब मुझे अपने परिवर्तनों की जांच करने की आवश्यकता होती है, तो मैं पैच को फिर से लागू कर दूंगा, पैच को दोबारा लागू कर दूंगा। (अगर मेरे पास स्रोत का पूरा नियंत्रण था, तो मैं इन सभी छोटे बदलावों को एक एकल कॉन्फ़िगरेशन फ़ाइल में ले जाऊंगा जो संस्करण नियंत्रण में नहीं है, संस्करण नियंत्रण के तहत "नमूना" कॉन्फ़िगरेशन फ़ाइल डालने)
दुर्भाग्य से, यह ऐसा लगता है कि जीएनयू patch
कमांड --reverse
ध्वज का समर्थन करता है, लेकिन यह एक पैच फ़ाइल के रूप में एचजी के बहु-फ़ाइल diff प्रारूप का समर्थन नहीं करता है (या शायद यह करता है, और मुझे इसके लिए स्विच नहीं पता?)। ओटीओएच, एचजी का अपना patch
कमांड है जो diff को लागू कर सकता है, लेकिन यह किसी भी प्रकार के reverse
ध्वज का समर्थन नहीं करता है।
तो मेरे सवाल दोहरा है:
- कैसे इस अस्थिर में किया जाना चाहिए? निश्चित रूप से एक "ट्वीक पैच" पर लटकना इस स्थिति को संभालने का एकमात्र तरीका नहीं है। हो सकता है कि मर्क्यूरियल में ऐसे अस्थायी, अतुलनीय परिवर्तनों के लिए एक प्लगइन या कुछ बनाया गया हो।
- चीजों के अलावा किया जाना चाहिए, क्या इस तरह के एक मेरकोरियल रेपो को इस तरह के एक मेरकोरियल डिफ-पैच को रिवर्स-लागू करने का कोई तरीका है? ऐसी अन्य स्थितियां हैं जहां ऐसी कार्यक्षमता उपयोगी होगी।
यह जो मैं चाहता (मैं स्वीकार करने के लिए मैं कभी नहीं अब तक MQ जानने के लिए प्रयत्न करना पड़ा होगा) के करीब लग रहा है। हालांकि, अब मैंने अपने पैच को एमक में जोड़ा है और बदलाव किए हैं जो मैं प्रतिबद्ध करना चाहता हूं, 'एचजी सीआई' शिकायत करता है कि मैं "एक लागू एमक पैच पर प्रतिबद्ध नहीं हो सकता"। मैं रेपो में स्थानीय परिवर्तन होने के कारण, पैच करने से पहले पैच को 'qpop' नहीं कर सकता। ऐसा लगता है कि जब तक मैं कुछ याद नहीं कर रहा हूं, तब तक एमक्यू को समस्या को हल करने से निर्णायक रूप से रोकता है। – eternicode
@ पीटरनिकोड: आप एक पैच 'hg प्रतिबद्ध' नहीं कर सकते हैं, लेकिन आप इसे qfinish' hg कर सकते हैं। – robert
@robert फिर से मेरा प्रश्न पढ़ें। मैं * पैच को कभी भी प्रतिबद्ध नहीं करना चाहता हूं। मैं * पैच कतार में होने के बाद किए गए परिवर्तनों को करना चाहता हूं, लेकिन उस पैच द्वारा किए गए परिवर्तनों के बिना। ऐसा लगता है कि एमक्यू इस कारण से सही उपकरण नहीं है। – eternicode