यह मार्गदर्शिका प्रोग्राम या फ़ाइल में पैच लगाने के लिए एक मूल अवलोकन प्रदान करती है।
पैच लगाने के लिए उपयोग किया जाने वाला कमांड पैच कमांड है लेकिन पैच को लागू करने के लिए डिफ कमांड को पैच किए जाने वाले मतभेदों को आपूर्ति करने के लिए भी इस्तेमाल किया जाना चाहिए।
आप एक पैच क्यों बनायेंगे
कल्पना करें कि आपके पास एक HTML फ़ाइल निम्नानुसार है:
MySite में आपका स्वागत है
उपरोक्त स्रोत, जब किसी वेब ब्राउज़र में लोड किया जाता है, तो "माईसाइट में आपका स्वागत है" शब्द दिखाएंगे।
यह सामान्य है जब एक ही फ़ाइल के कई संस्करण होने के लिए प्रोग्रामिंग। उदाहरण के लिए एक संस्करण होगा जो वर्तमान लाइव संस्करण है, विकास शाखा पर एक और संस्करण होगा जिसमें कई बदलाव हो सकते हैं, अंत में, रिलीज शाखा पर एक और संस्करण हो सकता है।
रिलीज शाखा असली उपयोगकर्ताओं द्वारा उपयोग की जाने वाली संस्करण होगी (यानी इस मामले में आगंतुकों को माइसाइट वेबसाइट पर)। आइए हम कहें कि माईसाइट संस्करण 1.0 पर है। विकास चरण के बाद, आप एक रिलीज शाखा तैयार करेंगे जो इस मामले में 1.1 होगी। विकास शाखा रिलीज शाखा से आगे होगी क्योंकि इसमें ऐसे बदलाव हो सकते हैं जो संस्करण 1,2 में रिलीज के कारण नहीं हैं लेकिन संस्करण 1.1 के लिए होंगे।
कल्पना कीजिए कि एक बग था जिससे माईसाइट को आपकी साइट कहा जाना चाहिए। आप बदले में प्रत्येक शाखा में जा सकते हैं और लाइव संस्करण में परिवर्तन कर सकते हैं, विकास संस्करण और आपके रिलीज संस्करण में लाइव में हॉटफिक्स के रूप में बदलाव हो सकता है और फिर विकास के लिए पैच लागू कर सकते हैं और शाखाएं जारी कर सकते हैं।
एक काम किया उदाहरण
निम्न कोड के साथ myfile.html नामक एक फ़ाइल बनाएं:
MySite में आपका स्वागत है
यह स्रोत कोड पैचिंग का एक काम किया उदाहरण है।
निम्न कोड के साथ myfile_v2.html नामक एक और फ़ाइल बनाएं:
आपकी साइट पर आपका स्वागत है
यह स्रोत कोड पैचिंग का एक काम किया उदाहरण है।
पहली फ़ाइल शीर्षक "माईसाइट में आपका स्वागत है" शीर्षक वाला मूल वेब पेज है। दूसरी फ़ाइल पहली फ़ाइल के समान है, सिवाय इसके कि माईफाइल को टेक्स्ट में आपकेफ़ाइल का नाम बदल दिया गया है।
डिफ फ़ाइल कैसे बनाएं
पैच बनाने के लिए, हमें myfile.html और myfile_v2.html के बीच अंतर को काम करने की आवश्यकता है।
हम इसे diff कमांड के साथ निम्नानुसार कर सकते हैं:
diff -u myfile.html myfile_v2.html> myfile.patch
आप इसे देखने के लिए निम्नानुसार nano संपादक में myfile.patch फ़ाइल खोल सकते हैं: नैनो myfile.patch
अपरिवर्तित रेखाएं नीली रंग में दिखाई देती हैं। हटाए गए रेखाएं लाल रंग में दिखाई देती हैं और जो पंक्तियां जोड़ दी गई हैं उन्हें हरे रंग में दिखाया गया है। Myfile.html पर पैच लागू करने के लिए निम्न आदेश का उपयोग करें: पैच <myfile.patch यह diff कमांड का उपयोग मूल फ़ाइल myfile.html पर किए गए परिवर्तनों को लागू करेगा। यदि आप पैच को वापस करना चाहते हैं ताकि myfile.html मूल रूप से जिस तरह से मूल रूप से वापस आ गया हो, निम्न आदेश का उपयोग करें: पैच -आर <myfile.patch पैच कमांड का उपयोग संपूर्ण निर्देशिका संरचना में पैच लागू करने के लिए किया जा सकता है। पैच बनाने और अच्छे स्रोत नियंत्रण सुनिश्चित करने के लिए पैच कमांड की तुलना में कहीं बेहतर उपकरण हैं। एक कारण है कि इतनी सारी विकास परियोजनाएं स्रोत नियंत्रण के लिए जीआईटी का उपयोग करती हैं। जीआईटी एक सतत शाखा रणनीति बनाने में आसान बनाता है। पैच कमांड एक बैश स्क्रिप्ट या कुछ सरल में भिन्नता लागू करने के लिए ठीक है, लेकिन आप आसानी से उन फ़ाइलों की बैकअप प्रतिलिपि बना सकते हैं जिन्हें आप पैच करना चाहते हैं और बस नई फ़ाइलों को उसी स्थान पर कॉपी करें। अधिक जानकारी के लिए मैन कमांड का उपयोग करें: आदमी पैच पैच कमांड का उपयोग करके पैच को कैसे लागू करें
एक पैच कैसे वापस करें
सारांश




