2011-10-14 11 views
38

क्या git add -p का कोई सटीक समतुल्य है?एचजी गिट एड-पी के बराबर?

आदमी से हवाला देते हुए, विकल्प -p साथ Git-जोड़ने (या --patch) निम्नलिखित है:

सहभागितापूर्ण तरीके से सूचकांक और काम पेड़ के बीच पैच की जिसे चुनें और उन्हें जोड़ने सूचकांक। यह उपयोगकर्ता को सूचकांक में संशोधित सामग्री जोड़ने से पहले अंतर की समीक्षा करने का मौका देता है।

+0

यह नया बंदरगाह से पहले टोर्टोइजएचजी का कम से कम हिस्सा था, और वर्तमान में नए बंदरगाह में लागू नहीं किया गया है। Https://bitbucket.org/tortoisehg/thg/issue/188/what-happened-to-change-selection-in-the –

+1

@ LasseV.Karlsen देखें: शेल्व सुविधा अभी भी नवीनतम TortoiseHg में उपलब्ध है। इसे 'रिपोजिटरी -> शेल्व' मेनू या प्रतिबद्ध विंडो में आइकन के माध्यम से एक्सेस किया जा सकता है। –

+0

[मर्कुरियल चेरी को प्रतिबद्ध करने के लिए परिवर्तन चुनने] के संभावित डुप्लिकेट (http://stackoverflow.com/questions/854930/mercurial-cherry-picking-changes-for-commit) –

उत्तर

33

record extension (जो Mercurial के साथ बंडल आता है) पर एक नज़र डालें।

ध्यान दें कि चूंकि मर्कुरियल में गिट जैसे स्टेजिंग क्षेत्र की अवधारणा नहीं है, इसलिए hg record चल रहा है, बस आपको अपनी कामकाजी प्रति में बदलाव, हंक द्वारा हंक, जांचने की अनुमति देगा। आपके द्वारा रिकॉर्ड करने के लिए चुने गए कोई भी परिवर्तन किए जाएंगे, और आपके द्वारा चुने गए किसी भी बदलाव को रिकॉर्ड करने के लिए बस आपकी कार्यशील प्रति में संशोधनों के रूप में छोड़ा गया है।

7

यदि आप TortoiseHg का उपयोग कर रहे हैं, तो इसकी Shelve सुविधा है जो आपको उन परिवर्तनों को संग्रहीत करने की अनुमति देती है जिन्हें आप अस्थायी क्षेत्र में नहीं लेना चाहते हैं। यह गिट की तरह, हंक चयन की अनुमति देता है।

TortoiseHg Workbench, यह टूल 2 तरीकों से पहुँचा जा सकता है:

  1. क्लिक करें Repository -> Shelve
  2. Commit विंडो में, टांड़ टूल आइकन का चयन करें। यह इस तरह दिखता है:

enter image description here

+3

शेल्व दृष्टिकोण का लाभ यह है कि आप अपने परीक्षण कर सकते हैं करने से पहले परिवर्तन। –

+1

+1 लॉरेन, यह हमेशा मुझे गड़बड़ कर देता है कि 'गिट ऐड-पी' करते समय, मैं अनिवार्य रूप से अनुमान लगा रहा हूं कि परिवर्तनों का सबसेट एक कार्यशील प्रतिबद्धता बनाएगा, और उसके बाद त्रुटि-प्रवण मैन्युअल प्रक्रिया का उपयोग करके अनुमान लगाएगा। परेशानी के लिए पूछ रहे हैं। –

15

Record Extention इस के लिए मानक उपकरण है। यह आपको प्रतिबद्धताओं में शामिल करने या नहीं करने के लिए शिकारी चुनने की अनुमति देता है। एक बार जब आप अपने hgrc में विस्तार सक्रिय कर दिया है, आदेश सिर्फ

hg record 

CRecord Extension आप इस के शीर्ष पर एक TUI (पाठ यूज़र इंटरफ़ेस) है जो आप जो लाइनों आप शामिल करना चाहते करने के लिए नीचे जाने के लिए अनुमति देता है देता है । हालांकि यह मानक नहीं है, इसलिए इसे किसी भी निर्देशिका में डाउनलोड करने की आवश्यकता है इससे पहले कि आप इसे अपने एचजीआरसी में सक्षम कर सकें।

hg crecord 

संपादित करें:

  1. रिकार्ड एक्सटेंशन अब आवश्यक है। अब विभिन्न आदेश -i या —interactive ध्वज का समर्थन करते हैं। उदाहरण के लिए:

    hg commit -i 
    

    ... आप जो भी शामिल करना चाहते हैं उसे हंक से डंक करेंगे।

  2. क्रिकॉर्ड ने कोर फीचर के रूप में 3.8 में इसे बनाया।अपने .hgrc

    [ui] 
    interface = curses 
    

    के लिए निम्न जोड़ें, —interactive आदेशों वर्ष CRecord विस्तार के रूप में एक ही इंटरफ़ेस लाएगा।

7

Mercurial 3.8.1 के रूप में crecord एक्सटेंशन बनाया गया है। सुनिश्चित करें कि आपके .hgrc में "ui" अनुभाग interface = curses है, या आपको एक असहज प्रश्न-और-उत्तर-इंटरफ़ेस मिलता है।

[ui] 
interface = curses 

फिर अपने प्रतिबद्ध सहभागी पूछा जाना है जो हंक या जो लाइन आपको लगता है कि प्रतिबद्ध में शामिल करना चाहते के बारे में।

hg commit --interactive 
+0

दाएं; https://www.mercurial-scm.org/wiki/RecordExtension देखें –

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