संशोधन विकल्प का उपयोग करके गिट कमिट को कैसे बदलें

How Change Git Commit Using Amend Option



` गिट प्रतिबद्ध कमांड का उपयोग रिपॉजिटरी में किए गए किसी भी बदलाव की पुष्टि करने के लिए किया जाता है, और गिट प्रत्येक प्रतिबद्ध कार्य का इतिहास रखता है। कभी-कभी उपयोगकर्ता को रिपोजिटरी प्रकाशित करने से पहले या बाद में प्रतिबद्ध संदेश को बदलने की आवश्यकता होती है। रिपॉजिटरी के पुराने या नए कमिटमेंट को बदलने के लिए उपयोगकर्ता को git इतिहास को फिर से लिखना होगा। NS -संशोधन विकल्प ` ​​. के साथ प्रयोग किया जाता है गिट प्रतिबद्ध ` git इतिहास को फिर से लिखने का आदेश। यह ट्यूटोरियल बताता है कि git कमिट या git कमिट संदेश को बदलने के लिए इस विकल्प को स्थानीय और दूरस्थ git रिपॉजिटरी पर कैसे लागू किया जा सकता है।

पूर्वापेक्षाएँ:

गिटहब डेस्कटॉप स्थापित करें।

गिटहब डेस्कटॉप गिट उपयोगकर्ता को ग्राफिक रूप से गिट से संबंधित कार्यों को करने में मदद करता है। आप उबंटू के लिए इस एप्लिकेशन के नवीनतम इंस्टॉलर को github.com से आसानी से डाउनलोड कर सकते हैं। आपको इस एप्लिकेशन को डाउनलोड करने के बाद इसे उपयोग करने के लिए इंस्टॉल और कॉन्फ़िगर करना होगा। स्थापना प्रक्रिया को ठीक से जानने के लिए आप उबंटू पर गिटहब डेस्कटॉप स्थापित करने के लिए ट्यूटोरियल भी देख सकते हैं।







एक गिटहब खाता बनाएं

रिमोट सर्वर में कमांड के आउटपुट की जांच करने के लिए आपको एक गिटहब अकाउंट बनाना होगा।



एक स्थानीय और दूरस्थ रिपॉजिटरी बनाएँ

इस ट्यूटोरियल में प्रयुक्त कमांड्स का परीक्षण करने के लिए आपको एक स्थानीय रिपॉजिटरी बनानी होगी और रिमोट सर्वर में रिपॉजिटरी को प्रकाशित करना होगा। इस ट्यूटोरियल में प्रयुक्त कमांड्स की जाँच करने के लिए स्थानीय रिपॉजिटरी फ़ोल्डर में जाएँ।



अंतिम प्रतिबद्धता बदलें:

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





$गिट प्रतिबद्ध

निम्न आउटपुट से पता चलता है कि नाम की दो अनट्रैक की गई फ़ाइलें हैं बुकलिस्ट.php तथा बुकटाइप.php.



प्रतिबद्ध संदेश के साथ रिपॉजिटरी में दो फाइलें जोड़ने के लिए निम्नलिखित कमांड चलाएँ और प्रतिबद्ध होने के बाद रिपॉजिटरी की स्थिति की जाँच करें।

$गिट ऐडबुकलिस्ट.php

$गिट प्रतिबद्ध -एम 'पुस्तकसूची फ़ाइल जोड़ी गई है।'

$गिट ऐडBooktype.php

$गिट प्रतिबद्ध -एम 'बुकटाइप फ़ाइल जोड़ी गई है।'

$गिट प्रतिबद्ध

निम्नलिखित आउटपुट से पता चलता है कि बुकलिस्ट.php तथा Booktype.php फ़ाइलों को प्रतिबद्ध संदेशों के साथ जोड़ा जाता है। अगला, जब कमिट कमांड का आउटपुट दिखाता है कि वर्किंग ट्री साफ है।

आप संपादक का उपयोग करके या टर्मिनल के आदेश को निष्पादित करके अंतिम प्रतिबद्ध संदेश को बदल सकते हैं। निम्नलिखित चलाएँ ` गिट प्रतिबद्ध `कमांड के साथ -संशोधन टेक्स्ट एडिटर का उपयोग करके अंतिम प्रतिबद्ध संदेश को बदलने का विकल्प।

$गिट प्रतिबद्ध --संशोधन

अंतिम प्रतिबद्ध संदेश को संशोधित करने के लिए उपरोक्त आदेश को निष्पादित करने के बाद निम्न संपादक खुल जाएगा।

टर्मिनल से अंतिम प्रतिबद्ध संदेश बदलने के लिए निम्न आदेश चलाएँ।

$गिट प्रतिबद्ध --संशोधन -एम 'बुकटाइप फ़ाइल फिर से बदल गई है।'

आउटपुट से पता चलता है कि अंतिम प्रतिबद्ध संदेश बदल गया है Booktype फ़ाइल फिर से बदल गई है।

पुरानी प्रतिबद्धता बदलें:

पुराने कमिट या मल्टीपल कमिट को `गिट रिबेस` और `गिट कमिट-एमेंड` कमांड का उपयोग करके बदला जा सकता है। रिबेस कमांड का उपयोग कमिट हिस्ट्री को फिर से लिखने के लिए किया जाता है, लेकिन इसे उन कमिट्स के लिए उपयोग करने की अनुशंसा नहीं की जाती है जो पहले से ही रिमोट सर्वर पर प्रकाशित होते हैं। कई गिट कमिट्स को बदलने के लिए रिबेस कमांड का उपयोग कमिट्स की संख्या के साथ किया जाता है। अंतिम दो प्रतिबद्ध संदेशों को बदलने के लिए निम्न आदेश चलाएँ। कमांड को निष्पादित करने के बाद संपादक को अंतिम दो प्रतिबद्ध संदेशों के साथ खोला जाएगा।

$गिट रिबेस -मैंसिर~2

निम्न आउटपुट SHA मानों के साथ रिपॉजिटरी के अंतिम दो प्रतिबद्ध संदेश दिखाता है।

लिखना पुनः शब्द की जगह में चुनना प्रतिबद्ध संदेश की उन पंक्तियों पर जिन्हें आप बदलना चाहते हैं। निम्नलिखित छवि में, संशोधन केवल एक प्रतिबद्ध के लिए किया गया है। यह प्रतिबद्ध संदेश वर्तमान फ़ाइल को सहेजने के बाद किसी अन्य संपादक पर संपादन के लिए खोला जाएगा।

प्रतिबद्ध संदेश अब संपादक से बदला जा सकता है। इधर, संदेश, बुकलिस्ट फ़ाइल जोड़ा गया है . में बदल गया है बुकलिस्ट फ़ाइल बदल गई है।

यदि आप रिबेस कमांड को फिर से चलाते हैं, तो आपको निम्न छवि की तरह संपादक में परिवर्तित प्रतिबद्ध संदेश दिखाई देगा।

अंतिम प्रतिबद्धता में परिवर्तन जोड़ें:

मान लीजिए बुकलिस्ट.php फ़ाइल को रिपोजिटरी में करने के बाद संशोधित किया गया है। अब, फ़ाइल को फिर से जोड़ने के लिए निम्न कमांड चलाएँ और ` . का उपयोग करके इस जोड़ के लिए प्रतिबद्ध संदेश बदलें गिट प्रतिबद्ध `के साथ आदेश -संशोधन विकल्प।

$गिट ऐडबुकलिस्ट.php

$गिट प्रतिबद्ध --संशोधन -एम 'बुकलिस्ट फाइल अपडेट हो गई है।'

उपरोक्त आदेशों को निष्पादित करने के बाद निम्न आउटपुट दिखाई देगा।

यदि आप फ़ाइल को दोबारा जोड़ने के बाद पिछले प्रतिबद्ध संदेश को बदलना नहीं चाहते हैं, तो आपको -नो-एडिट विकल्प का उपयोग करना होगा -संशोधन ` . के साथ विकल्प गिट प्रतिबद्ध `आदेश। निम्न आदेश प्रतिबद्ध संदेश को बदले बिना संशोधित फ़ाइल को भंडार में जोड़ देगा।

$गिट प्रतिबद्ध --संशोधन --कोई संपादन न करें

स्थानीय रिपॉजिटरी में सभी परिवर्तनों को पूरा करने के बाद, आप टर्मिनल से पुश कमांड निष्पादित करके या GitHub डेस्कटॉप एप्लिकेशन में रिपॉजिटरी खोलकर स्थानीय सामग्री को दूरस्थ सर्वर पर धकेल सकते हैं। मान लीजिए आप GitHub डेस्कटॉप पर रिपॉजिटरी खोलते हैं और Publish रिपॉजिटरी विकल्प पर क्लिक करते हैं। उस स्थिति में, निम्न संवाद बॉक्स स्थानीय भंडार की संशोधित सामग्री को दूरस्थ सर्वर पर प्रकाशित करने के लिए प्रकट होगा।

निष्कर्ष:

एक या एक से अधिक git कमिट को बदलने के लिए –amend विकल्प के उपयोग का वर्णन इस ट्यूटोरियल में डेमो रिपॉजिटरी का उपयोग करके किया गया है। प्रतिबद्ध संदेश को बदलने के साथ या उसके बिना कमिटमेंट को बदलने का तरीका यहाँ दिखाया गया है ताकि git उपयोगकर्ता को -amend विकल्प का उपयोग करने के उद्देश्य को समझने में मदद मिल सके और इसे कमिट को बदलने के लिए git रिपॉजिटरी में लागू किया जा सके।