आप एक में सभी प्रतिबद्धताओं को कैसे स्क्वाश करते हैं?

How Do You Squash All Commits One



गिट स्क्वैश में एक ऐसी तकनीक है जो आपको कमिट पर कई बदलाव करने और फिर इसे एक कमिट में समेकित करने की अनुमति देती है। आइए एक उदाहरण की मदद से समझाएं, मान लीजिए कि आपके पास n संख्या में कमिट हैं और जब आप उन पर गिट स्क्वैशिंग लागू करते हैं, तो आप सभी 'एन' कमिट्स को सिर्फ सिंगल कमिट में स्क्वैश या कंप्रेस कर सकते हैं। Git स्क्वैश का उपयोग कई बड़े कमिट को एक छोटे से सार्थक कमिट में बदलने के लिए किया जाता है। तो, आप गिट लॉग को स्पष्ट कर सकते हैं। आप स्क्वैशिंग तकनीक का उपयोग करके शाखाओं को मर्ज भी कर सकते हैं। हमेशा स्क्वैश कमिट करना और इसे मास्टर या पैरेंट ब्रांच के साथ रिबेस करना सबसे अच्छा अभ्यास है।

यह लेख आपको विस्तृत करेगा कि कैसे स्क्वैश को गिट में एक ही कमिट में किया जाए। हमने CentOS 8 Linux वितरण पर सभी चरणों को लागू किया है।







स्क्वैश git . के साथ एक में आता है

आप निम्नलिखित चरणों में git स्क्वैशिंग को लागू कर सकते हैं:



चरण 1: स्टार्ट कमिट चुनें

यह निर्धारित करने के लिए कि आपको स्क्वैश करने के लिए कितने कमिट की आवश्यकता है, आप टर्मिनल पर निम्न कमांड चलाएंगे:



$ गिट लॉग





अब, आप निम्नलिखित कमांड का उपयोग करके एक इंटरैक्टिव रिबेस सत्र शुरू करने के लिए git को लागू करेंगे:

$ git rebase -i HEAD~N

उपरोक्त HEAD~N में, 'N' आपके द्वारा 'git log' कमांड से निर्धारित किए गए कमिट्स की कुल संख्या है। आइए मान लें, कमिट्स की संख्या 4 है। अब, कमांड निम्न रूप में बदल जाएगी:

$ git rebase -i HEAD~4

निम्नलिखित कमिट सूची टर्मिनल पर प्रदर्शित होगी जहां प्रत्येक शब्द पिक के साथ घूर रहा है।

चरण 2: पिक को स्क्वैश में बदलें

यहां, हम सभी कमिट्स को स्क्वाशेबल के रूप में चिह्नित करेंगे, पहली कमिट को छोड़ दें जिसका उपयोग शुरुआती बिंदु के रूप में किया जाएगा। इसलिए, विम एडिटर को 'i' दबाकर इन्सर्ट मोड में बदलें और पहली कमिट को छोड़कर सभी पिक कमिट को स्क्वैश में बदलें। अब, इन्सर्ट मोड बदलने के लिए 'Esc' दबाएं और सभी बदलावों को सेव करने और छोड़ने के लिए ':wq!' दबाएं। यदि आप साधारण टेक्स्ट एडिटर का उपयोग कर रहे हैं, तो आप बस 'पिक' शब्द को 'स्क्वैश' में बदल सकते हैं और परिवर्तनों को सहेज सकते हैं। उसके बाद, आपको टर्मिनल पर निम्न विंडो दिखाई देगी:

जब आप इस शेल को छोड़ेंगे, तो आपको टर्मिनल विंडो पर निम्न संदेश दिखाई देंगे:

यदि आप सभी को स्क्वैश करेंगे, तो आप सभी कमिट्स को एक सिंगल कमिट स्टेटमेंट में देखेंगे जो टर्मिनल पर प्रदर्शित होगा:

निष्कर्ष

गिट स्क्वैश का उपयोग करके, आप आसानी से कई कमिट्स को एक छोटे सिंगल कमिट में स्क्वैश या कंप्रेस कर सकते हैं। आप इस तकनीक का उपयोग प्रलेखन वर्तनी की गलतियों को ठीक करने के लिए कर सकते हैं। हमने इस लेख में गिट स्क्वैश लागू किया है। हमने यह भी देखा है कि कैसे हम git rebase और स्क्वैश कमांड का उपयोग करके इतिहास को साफ कर सकते हैं।