सामग्री पर जाएं
GitTree
इतिहास और पुनर्प्राप्ति

इंटरैक्टिव रिबेस के साथ इतिहास संपादित करें

एक इंटरैक्टिव रिबेस चुने हुए से ऊपर की प्रतिबद्धताओं को फिर से लिखता है: रखें, दोबारा लिखें, संपादित करें, स्क्वैश करें, प्रत्येक को ठीक करें या छोड़ें, और उन्हें एक नए क्रम में खींचें, जैसे कि git rebase -i। एकल परिवर्तन के लिए, कमिट के मेनू में Edit History इसे एक चरण में करता है।

निःशुल्कअद्यतन किया गया

GitTree में निःशुल्क काम करता है: आपके साइन इन करने के बाद प्रत्येक स्थानीय Git सुविधा।

इस पेज पर
  1. शुरू करने से पहले
  2. इसे कहां खोजें
  3. कदम
  4. अपेक्षित परिणाम
  5. प्रत्येक क्रिया क्या करती है
  6. अगर कुछ गलत होता है
  7. प्रश्न
  8. संबंधित

शुरू करने से पहले

  • पुनः लिखने की प्रतिबद्धता आपकी वर्तमान शाखा पर है, उनके बीच कोई मर्ज प्रतिबद्धता नहीं है।
  • उन कमिट्स को प्राथमिकता दें जिन्हें आपने आगे नहीं बढ़ाया है: दोबारा लिखे गए कमिट्स को नई आईडी मिलती हैं।

इसे कहां खोजें

  • बदलने के लिए कमिट के ठीक नीचे राइट-क्लिक करें: Edit History › Interactive Rebase of the Commits Above…।
  • एक ही Edit History मेनू में एक-चरणीय संपादन: Edit Commit Message…, Drop Commit…, Move Commit Up और Move Commit Down।
  • कई कमिट चुनें, फिर राइट-क्लिक करें: Squash Commits…।
कार्रवाईmacOSWindows और Linux
Undo संपूर्ण रिबेस⌘ZCtrl+Z

कदम

  1. संपादक खोलें

    बदलने के लिए नीचे दिए गए कमिट पर राइट-क्लिक करें और Edit History › Interactive Rebase of the Commits Above… चुनें। सबसे पुराना कमिट शीर्ष पर है, जिस क्रम में उन्हें दोबारा चलाया जाता है।

    एनिमेशन: इंटरैक्टिव रीबेस एडिटर खुलता है, एक कमिट स्क्वैश पर और दूसरा रिवर्ड पर सेट होता है
    प्रत्येक चरण में एक क्रिया होती है; यहां एक कमिट को ऊपर वाले में तोड़ दिया गया है और दूसरे को दोबारा लिखा गया है।GitTree प्रदर्शन भंडार के साथ इंटरफ़ेस।
  2. प्रत्येक प्रतिबद्धता के लिए एक क्रिया चुनें

    प्रत्येक चरण पर Action सेट करें: Pick इसे रखता है, Reword इसका संदेश बदलता है, Edit वहीं रुकता है ताकि आप इसमें संशोधन कर सकें, Squash और Fixup इसे ऊपर दिए गए कमिट में मोड़ें, Drop इसे छोड़ दें।

  3. यदि आवश्यक हो तो पुनः व्यवस्थित करें

    किसी चरण को उसके हैंडल से खींचें, या उस पर ध्यान केंद्रित करें और Alt+↑ या Alt+↓ दबाएँ। अक्षर भी काम करते हैं: पी, आर, ई, एस, एफ और डी क्रियाएं निर्धारित करते हैं।

  4. रिबेस प्रारंभ करें

    Start Rebase दबाएँ. यदि कुछ कमिट पहले से ही रिमोट पर हैं, तो पहले उन्हें दोबारा लिखने की पुष्टि करें। GitTree कहते हैं Rebase finished. Undo can put the branch back.

अपेक्षित परिणाम

शाखा नई आईडी के साथ दोबारा लिखी गई प्रतिबद्धताओं को रखती है। पुरानी शाखा को refs/ogt/trash के अंतर्गत रखा गया है।

प्रत्येक क्रिया क्या करती है

इंटरैक्टिव रीबेस क्रियाएँ
कार्रवाईनतीजा
Pickप्रतिबद्धता वैसी ही रहती है जैसी वह है।
Rewordवही परिवर्तन, नया संदेश जो आप संपादक में टाइप करते हैं।
Editइस प्रतिबद्धता के बाद रिबेस बंद हो जाता है इसलिए आप इसमें संशोधन कर सकते हैं, फिर बैनर से जारी रख सकते हैं।
Squashउपरोक्त प्रतिबद्धता में मुड़ा हुआ; संदेश संयुक्त हैं.
Fixupउपरोक्त प्रतिबद्धता में मुड़ा हुआ; इसका अपना संदेश खारिज कर दिया जाता है। इसके बजाय Fixup, use its message इसका संदेश रखता है।
Dropशाखा से बाहर छोड़ दिया गया.

अगर कुछ गलत होता है

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

GitTree में इंटरएक्टिव रिबेस केवल रैखिक इतिहास को फिर से लिखता है। मर्ज के ऊपर एक प्रतिबद्धता से प्रारंभ करें।

"कदम... शून्य में समा जाता है: इसे रखी गई प्रतिबद्धता से नीचे ले जाएं।"

एक स्क्वैश या फिक्सअप को मोड़ने के लिए इसके ऊपर एक प्रतिबद्धता की आवश्यकता होती है। इसे स्थानांतरित करें, या पहले चरण को पिक में बदलें।

प्रश्न

मैं अनेक प्रतिबद्धताओं को एक में कैसे बदलूँ?

उन्हें ग्राफ़ में चुनें और Squash Commits… चुनें: स्क्वैश डायलॉग पहले परिणाम, संदेश और सह-लेखकों को दिखाता है। या संपादक में प्रत्येक कमिट को पहले के बाद Squash या Fixup पर सेट करें।