2010-03-03 17 views
20

मैं निम्न परिवर्तन के साथ एक फ़ाइल मिल गया है:सुलझाना दो पंक्तियों -p` जोड़ने

# Manual hunk edit mode -- see bottom for a quick guide 
@@ -280,6 +281,7 @@ 
if(foo) 
{ 
    bla(); 
- test(true); 
+ removeThis(); 
+ test(false); 
} 
else 

मैं कैसे केवल test() के लिए परिवर्तन के लिए प्रतिबद्ध कर सकते हैं और करने removethis (बचने के लिए)? हर बार जब मैं हंक मैन्युअल रूप से संपादित करने की कोशिश करता हूं तो मुझे बताता है कि यह साफ-सफाई लागू नहीं होता है।

उत्तर

24

मैं केवल परीक्षण() के लिए परिवर्तन कैसे कर सकता हूं, और इसे हटाने से बचें यह()?

यह आसान है।

  1. add -i मोड डालें, फिर पी दबाने दर्ज द्वारा 5: [p]atch का चयन करें।

  2. अपनी फ़ाइल दर्ज करके अपनी फ़ाइल चुनें और दबाएं दर्ज करें पैच संपादित करना प्रारंभ करें।

  3. प्रेस अपने हंक संपादित करने के लिए (आप सफलतापूर्वक बजाय git add -p करके यहाँ तक पहुँच चुके लगते हैं)।

  4. रूप में अच्छी तरह शुरुआत में, removeThis()पूरी तरह से के साथ लाइन को हटाएँ + संकेत के साथ। कुछ और मत छुओ! परिणामी पाठ आपके द्वारा किए जा रहे परिवर्तन के लिए पैच की तरह दिखना चाहिए।

  5. सहेजें फ़ाइल और बाहर निकलने संपादक।

पैच अच्छी तरह से लागू होगा। मैंने अभी जांच की है। फिर भी जांचें - शायद यह एक और हंक है जो लागू नहीं होता है?

इसके अलावा, ,+/- के पास प्रतीकों को संदिग्ध लग रहा है। शायद, आपके patch और diff प्रोग्राम किसी भी तरह सिंक से बाहर हैं? हंक से , एस को हटाने का प्रयास करें।

+2

धन्यवाद! मैंने यह भी पता लगाया कि मेरे संपादक ('नोटपैड 2') ने फाइल को एलएफ लाइन एंडिंग में सेव किया है। उन्हें एलआरएलएफ के अंत में सहेजने से अंतिम समस्या तय हुई। – vdboor

+0

एफवाईआई, लाइनों के सामने कॉमा का टाइप टाइपो टाइपिंग यहां है, वे स्रोत में नहीं हैं। उनकी व्यवस्था करना। – vdboor

+0

@vdboor बस उत्सुक, क्यों एलएफ-टू-सीआरएलएफ हल करता है? क्या आप विंडोज मंच पर हैं? – RayLuo

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