DevOps बूटकैंप · पाठ

इतिहास के लिए इंटरैक्टिव रीबेसिंग

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

पाठ 2, कुल 4 में से11 चरण

इतिहास के लिए इंटरैक्टिव रीबेसिंग, CoddyKit पर DevOps बूटकैंप का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह DevOps बूटकैंप सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। DevOps बूटकैंप पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

इंटरैक्टिव रीबेस से परिचय

एक शक्तिशाली Git टूल से परिचित हों: इंटरैक्टिव रीबेस! इसकी सहायता से आप अपने प्रोजेक्ट के कमिट इतिहास को दूसरों के साथ साझा करने से पहले दोबारा व्यवस्थित कर सकते हैं।

इसे अपने कमिट के लिए एक टाइम मशीन समझिए, जो आपको बदलावों को साफ़ करने, संयोजित करने या उनका क्रम बदलने देती है, ताकि आपके काम की स्पष्ट और रैखिक कहानी बन सके।

इतिहास को साफ़ क्यों करें

आप इतिहास को दोबारा क्यों लिखना चाहेंगे?

  • स्पष्टता: अपने प्रोजेक्ट के कमिट लॉग को पढ़ने और समझने में आसान बनाएँ।
  • संक्षिप्तता: छोटे-छोटे क्रमिक कमिट को एक सार्थक बदलाव में संयोजित करें।
  • डिबगिंग: साफ़ इतिहास git bisect जैसे टूल का उपयोग करके यह पता लगाने में मदद करता है कि बग कहाँ आया।
  • बेहतर पुल अनुरोध: सहयोगियों के सामने बदलावों का एक बेहतर ढंग से तैयार समूह प्रस्तुत करें।

इंटरैक्टिव रीबेस शुरू करना

इंटरैक्टिव रीबेस शुरू करने के लिए आप git rebase -i कमांड का उपयोग करेंगे। आपको यह बताना होगा कि आप कितने कमिट पीछे जाना चाहते हैं।

उदाहरण के लिए, अपनी वर्तमान शाखा के अंतिम 3 कमिट का रीबेस करने के लिए आप यह कमांड चलाएँगे:

git rebase -i HEAD~3

इससे एक संपादक खुलेगा, जिसमें आपके अंतिम 3 कमिट और उपलब्ध कमांड दिखाई देंगी।

रीबेस संपादक की कमांड

जब आप इंटरैक्टिव रीबेस शुरू करते हैं, तो Git कमिट की सूची और निर्देशों वाला एक टेक्स्ट संपादक खोलता है। प्रत्येक कमिट की शुरुआत एक कमांड से होती है:

  • pick: कमिट को जैसा है वैसा ही उपयोग करें।
  • reword: कमिट का उपयोग करें, लेकिन उसका संदेश संपादित करें।
  • edit: कमिट का उपयोग करें, लेकिन बदलावों में संशोधन करने के लिए रुकें।
  • squash: पिछले कमिट के साथ संयोजित करें और संदेशों को मिला दें।
  • fixup: पिछले कमिट के साथ संयोजित करें और इस कमिट का संदेश हटा दें।
  • drop: कमिट को पूरी तरह हटा दें।

उदाहरण: कमिट संदेश बदलना

मान लीजिए कि कमिट संदेश में टाइपिंग की गलती हो गई है। इसे ठीक करने के लिए आप reword का उपयोग कर सकते हैं। जिस कमिट को बदलना है, उसके सामने pick को reword में बदलें:

pick 5a6b7c8 Add new feature
pick 1d2e3f4 Fix typo in docs
reword 9g0h1i2 Implement login screen

संपादक को सहेजकर बंद करने के बाद, Git आपको 9g0h1i2 कमिट का संदेश संपादित करने के लिए कहेगा।

उदाहरण: कमिट संयोजित करना

अक्सर आप कई छोटे, संबंधित कमिट बनाते हैं जिन्हें एक कमिट बनाया जा सकता है। इन्हें संयोजित करने के लिए squash का उपयोग करें।

pick a1b2c3d Initial feature commit
squash e4f5g6h Add more details
fixup i7j8k9l Fix small bug

यहाँ e4f5g6h, a1b2c3d में मिल जाएगा और दोनों के संदेश संयोजित हो जाएँगे। i7j8k9l भी a1b2c3d में मिल जाएगा, लेकिन उसका संदेश हटा दिया जाएगा (fixup)।

उदाहरण: कमिट हटाना

यदि आपके पास कोई प्रयोगात्मक कमिट है जिसकी अब आवश्यकता नहीं है, तो आप उसे इतिहास से आसानी से drop कर सकते हैं। बस pick को drop में बदलें या पूरी पंक्ति हटा दें:

pick 1122334 Initial setup
drop 5566778 Test experimental feature
pick 9900112 Add user authentication

सहेजने के बाद, 5566778 कमिट आपकी शाखा के इतिहास से पूरी तरह हटा दिया जाएगा।

उदाहरण: कमिट का क्रम बदलना

आप कमिट का क्रम भी बदल सकते हैं। संपादक में पंक्तियों को काटकर चिपकाएँ और उनका क्रम बदलें। Git बदलावों को नए क्रम में लागू करेगा।

मूल क्रम:

pick abcdef1 Add feature A
pick 1234567 Add feature B

बदला हुआ क्रम:

pick 1234567 Add feature B
pick abcdef1 Add feature A

सावधान रहें, क्योंकि यदि कमिट एक-दूसरे पर निर्भर हों, तो क्रम बदलने से विरोध उत्पन्न हो सकते हैं।

सुनहरा नियम: साझा इतिहास का रीबेस न करें

यह अत्यंत महत्वपूर्ण है: ऐसे कमिट का रीबेस कभी न करें जिन्हें पहले ही किसी साझा रिमोट रिपॉज़िटरी (जैसे GitHub या GitLab) पर पुश किया जा चुका हो और जिन्हें अन्य लोग पुल कर चुके हों।

रीबेस करने से कमिट ID दोबारा लिखी जाती हैं। यदि अन्य लोगों ने मूल कमिट के आधार पर अपना काम किया है, तो आपके रीबेस किए गए कमिट पूरी तरह अलग इतिहास के रूप में दिखाई देंगे, जिससे सभी के लिए बड़े विरोध और भ्रम उत्पन्न होंगे।

केवल उन कमिट का रीबेस करें जो आपकी स्थानीय शाखा में ही मौजूद हों!

रीबेस कमांड की जाँच

आपके पास तीन कमिट हैं: A (Initial), B (Minor fix), C (Refactor)। आप B को A में मिलाना चाहते हैं, A का मूल संदेश बनाए रखना चाहते हैं और फिर C को जैसा है वैसा ही रखना चाहते हैं। इंटरैक्टिव रीबेस संपादक में (सबसे पुराने से सबसे नए क्रम में) आप कौन-सी कमांड का उपयोग करेंगे?

इंटरैक्टिव रीबेस का पुनरावलोकन

आपने शक्तिशाली git rebase -i कमांड के बारे में सीख लिया है!

  • यह आपको अपने स्थानीय कमिट इतिहास को दोबारा लिखने की सुविधा देती है।
  • आप संदेशों को reword कर सकते हैं, कमिट को squash या fixup कर सकते हैं, अनचाहे बदलावों को drop कर सकते हैं और कमिट का क्रम भी बदल सकते हैं।
  • सुनहरा नियम हमेशा याद रखें: साझा रिमोट पर पहले ही पुश किए जा चुके कमिट का रीबेस कभी न करें।

इंटरैक्टिव रीबेस में निपुण होने से आपके प्रोजेक्ट का इतिहास साफ़ और समझने योग्य बना रहता है!

शुरुआत निःशुल्क

एआई शिक्षक के साथ DevOps बूटकैंप सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
142
पाठ
568

अक्सर पूछे जाने वाले प्रश्न

क्या “इतिहास के लिए इंटरैक्टिव रीबेसिंग” पाठ निःशुल्क है?

हाँ — DevOps बूटकैंप अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “इतिहास के लिए इंटरैक्टिव रीबेसिंग” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। DevOps बूटकैंप पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“इतिहास के लिए इंटरैक्टिव रीबेसिंग” में मैं क्या सीखूँगा?

पुश करने से पहले कमिट इतिहास को फिर से लिखने, कमिट्स को एक करने, उनका क्रम बदलने या संदेश संपादित करने के लिए इंटरैक्टिव रीबेस का उपयोग कीजिए। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ DevOps बूटकैंप का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या DevOps बूटकैंप शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर DevOps बूटकैंप शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।

“इतिहास के लिए इंटरैक्टिव रीबेसिंग” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस DevOps बूटकैंप पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर DevOps बूटकैंप पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. मर्ज टकरावों का मैन्युअल समाधान
  2. इतिहास के लिए इंटरैक्टिव रीबेसिंग
  3. कमिट्स का चेरी-पिक करना
  4. Git Rerere से टकराव समाधान का पुनः उपयोग
← DevOps बूटकैंप पर वापस जाएँ