पाठ 23 · पुनर्प्राप्ति
मर्ज और रीबेस विवादों का समाधान करें
मर्ज और रिबेस में समान प्रतिस्पर्धी शीर्षक को हल करें, देखें कि "हमारा" और "उनका" उनके बीच क्यों बदलता है, एक जानबूझकर संयुक्त परिणाम को बचाएं और किसी भी व्यक्ति के विचार को खोए बिना प्रत्येक ऑपरेशन को समाप्त करें।
- स्तर: इंटरमीडिएट
- 14 मिनट पढ़ा
- 7 मिनट का वीडियो
- अद्यतन किया गया
- इस पाठ से पहले: अलग-अलग इतिहास वाली शाखाओं को मिलाएँ, अप्रकाशित कार्य को नए आधार पर पुनः आधार बनाएँ
प्रगति इस ब्राउज़र में सहेजी गई.
चलाने से YouTube से वीडियो लोड होता है (गोपनीयता-उन्नत मोड)।
आप क्या सीखेंगे
- एक वास्तविक संघर्ष पढ़ें: आधार, वर्तमान पक्ष और आने वाला पक्ष।
- बताएं कि "हमारा" और "उनका" मर्ज और रिबेस के बीच अदला-बदली क्यों करते हैं।
- एक सुविचारित संकल्प लिखें, फिर उसे हल हो गया चिह्नित करें।
- ऑपरेशन जारी रखें और जांच लें कि कुछ भी आधा-अधूरा तो नहीं रह गया है।
शुरू करने से पहले
टीम के दो साथियों ने पृष्ठ की एक ही पंक्ति बदल दी। conflict/sara पर, सारा ने नायक का शीर्षक बदलकर "विश्वास के साथ परिवर्तनों की समीक्षा करें" कर दिया। conflict/omar को, उमर ने उसी पंक्ति को "प्रत्येक सहेजे गए परिवर्तन को समझें" में बदल दिया। दोनों शाखाएँ कमिट एम से शुरू होती हैं, जहाँ शीर्षक था "अपना काम स्पष्ट रूप से देखें।", और प्रत्येक शाखा में बिल्कुल एक कमिट है। आप इस विचलन की दो समान प्रतियां बनाते हैं: एक मर्ज के लिए (gittree-conflict-merge) और एक रीबेस (gittree-conflict-rebase) के लिए। दोनों में, conflict/sara की जांच कर ली गई है और कार्य वृक्ष साफ़ है। कोई मर्ज या रिबेस नहीं चल रहा है.
Everything is local and on the Free plan (GitTree asks you to sign in): no hosting account, no provider, no internet. Every identity is fictional (example.com). Never run this lesson in a real project.
परिवर्तन GitTree या मूल Git कमांड के साथ करें, दोनों एक ही प्रतिलिपि में नहीं। परिणाम पढ़ना हमेशा सुरक्षित होता है. मेनू लेबल 2.0 के स्वयं के स्ट्रिंग्स से आते हैं और मूल कमांड डिस्पोजेबल प्रतियों में Git 2.43 के साथ चलाए गए थे। GitTree चरण macOS, Windows या Linux पर नहीं चलाए गए।
अवधारणा और राज्य प्रभाव
सामग्री संघर्ष का मतलब है कि Git अकेले एक परिणाम नहीं चुन सकता: दोनों पक्षों ने एक ही पंक्ति को अलग-अलग तरीके से बदल दिया। Git रुकता है और फ़ाइल के तीन संस्करणों को इंडेक्स में रखता है: चरण 1 सामान्य आधार है, चरण 2 "हमारा" है और चरण 3 "उनका" है। यह आपके कार्य ट्री में फ़ाइल में विरोध मार्कर भी लिखता है। संपादक में मार्करों को हटाने से Git के लिए कुछ भी हल नहीं होता है: फ़ाइल केवल तभी हल होती है जब आप परिणाम सहेजते हैं और इसे चरणबद्ध करते हैं, जो चरण 0 को वापस लाता है।
"हमारे" और "उनके" पद हैं, लोग नहीं। एक मर्ज में आप सारा की शाखा में हैं, इसलिए हमारा संस्करण सारा का (वर्तमान पक्ष) है और उनका उमर का (आने वाला पक्ष) है। सारा को उमर पर आधारित करने में, गिट पहले उमर की शाखा में जाता है और फिर सारा की प्रतिबद्धता को दोहराता है, इसलिए हमारा संस्करण उमर का संस्करण है (जिस शाखा पर आप दोबारा भरोसा कर रहे हैं) और उनका सारा की प्रतिबद्धता है। GitTree प्रत्येक नाम के आगे भूमिका प्रिंट करता है ताकि आपको याद न रखना पड़े: "(वर्तमान)" और "(आने वाली)" एक मर्ज में, "(रीबेसिंग ऑन)" और "(आपकी प्रतिबद्धता)" एक रीबेस में।
सही परिणाम शायद ही कभी एक तरफा होता है। यहां इरादा संकल्प है "प्रत्येक परिवर्तन की आत्मविश्वास के साथ समीक्षा करें।", न तो सारा की पंक्ति और न ही उमर की। पृष्ठ की प्रत्येक अन्य पंक्ति को बिल्कुल वैसा ही रखें जैसा वह था। हल की गई फ़ाइल को चिह्नित करना आपके परिणाम को चरणबद्ध करता है; जारी रखना एक अलग कदम है जो मर्ज कमिट को समाप्त करता है या उमर की सारा की कमिट को दोबारा बनाता है।
जबकि ऑपरेशन रोक दिया गया है, शाखा वहीं है जहां ऑपरेशन ने इसे छोड़ा था और फ़ाइल विवादित है। सर्वर तक कुछ भी नहीं पहुंचता.
सटीक प्रोजेक्ट स्थिति तैयार करें
एक विचलन करें, फिर उसे दो बार कॉपी करें। प्रोजेक्ट की एक अलग सामान्य प्रति से प्रारंभ करें क्योंकि पाठ 18 ने इसे छोड़ दिया है, और अपने मूल gittree-features को अछूता छोड़ दें। पृष्ठ संस्करण नीचे हैं: मर्ज किया गया साझा आधार है, सारा और ओमर दो प्रतिस्पर्धी संस्करण हैं, और रिज़ॉल्व्ड वह परिणाम है जिसे आप सहेजेंगे।
पूर्ण फ़ाइल इनपुट
केवल नीचे नामित चरण पर ही सहेजें। ये अंतिम नई लाइन के साथ पूर्ण UTF-8/LF निकाय हैं; कभी भी मार्कडाउन बाड़ चिपकाएँ नहीं। अपरिवर्तित चलने योग्य फ़ाइलें नामित इनपुट प्राप्त करती हैं। अलग-अलग संस्करणों में मूल को अधिलेखित नहीं किया जाना चाहिए।
Index.html - मर्ज किया गया
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>GitTree Features — course demo</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<header class="site-header">
<a href="#main">GitTree Features</a>
</header>
<main id="main" tabindex="-1">
<section class="hero" aria-labelledby="hero-title">
<p class="eyebrow">GitTree Learn demo project</p>
<h1 id="hero-title">See your work clearly.</h1>
<p id="hero-copy">Choose one change, then check what Git saved.</p>
</section>
<section class="features" aria-labelledby="features-title">
<h2 id="features-title">Follow your work</h2>
<div class="cards">
<article class="feature-card">
<h3>History</h3>
<p>Read commits and branches together.</p>
</article>
<article class="feature-card">
<h3>Changes</h3>
<p>Review the exact content selected for a commit.</p>
</article>
<article class="feature-card">
<h3>Recovery</h3>
<p>Inspect the scope of a recovery point before using it.</p>
</article>
</div>
</section>
<section aria-labelledby="plans-title">
<h2 id="plans-title">Choose the workflow you need</h2>
<div class="cards">
<article class="feature-card">
<h3>Local Git</h3>
<p>Local Git workflows work without signing in.</p>
</article>
<article class="feature-card">
<h3>Connected workflows</h3>
<p>Provider integrations and Nour require Pro or an applicable trial.</p>
</article>
</div>
</section>
</main>
<footer><p>Built by a fictional team for GitTree Learn. Review one change at a time.</p></footer>
<script type="module" src="site.js"></script>
</body>
</html>Index.html - सारा
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>GitTree Features — course demo</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<header class="site-header">
<a href="#main">GitTree Features</a>
</header>
<main id="main" tabindex="-1">
<section class="hero" aria-labelledby="hero-title">
<p class="eyebrow">GitTree Learn demo project</p>
<h1 id="hero-title">Review changes with confidence.</h1>
<p id="hero-copy">Choose one change, then check what Git saved.</p>
</section>
<section class="features" aria-labelledby="features-title">
<h2 id="features-title">Follow your work</h2>
<div class="cards">
<article class="feature-card">
<h3>History</h3>
<p>Read commits and branches together.</p>
</article>
<article class="feature-card">
<h3>Changes</h3>
<p>Review the exact content selected for a commit.</p>
</article>
<article class="feature-card">
<h3>Recovery</h3>
<p>Inspect the scope of a recovery point before using it.</p>
</article>
</div>
</section>
<section aria-labelledby="plans-title">
<h2 id="plans-title">Choose the workflow you need</h2>
<div class="cards">
<article class="feature-card">
<h3>Local Git</h3>
<p>Local Git workflows work without signing in.</p>
</article>
<article class="feature-card">
<h3>Connected workflows</h3>
<p>Provider integrations and Nour require Pro or an applicable trial.</p>
</article>
</div>
</section>
</main>
<footer><p>Built by a fictional team for GitTree Learn. Review one change at a time.</p></footer>
<script type="module" src="site.js"></script>
</body>
</html>Index.html - उमर
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>GitTree Features — course demo</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<header class="site-header">
<a href="#main">GitTree Features</a>
</header>
<main id="main" tabindex="-1">
<section class="hero" aria-labelledby="hero-title">
<p class="eyebrow">GitTree Learn demo project</p>
<h1 id="hero-title">Understand each saved change.</h1>
<p id="hero-copy">Choose one change, then check what Git saved.</p>
</section>
<section class="features" aria-labelledby="features-title">
<h2 id="features-title">Follow your work</h2>
<div class="cards">
<article class="feature-card">
<h3>History</h3>
<p>Read commits and branches together.</p>
</article>
<article class="feature-card">
<h3>Changes</h3>
<p>Review the exact content selected for a commit.</p>
</article>
<article class="feature-card">
<h3>Recovery</h3>
<p>Inspect the scope of a recovery point before using it.</p>
</article>
</div>
</section>
<section aria-labelledby="plans-title">
<h2 id="plans-title">Choose the workflow you need</h2>
<div class="cards">
<article class="feature-card">
<h3>Local Git</h3>
<p>Local Git workflows work without signing in.</p>
</article>
<article class="feature-card">
<h3>Connected workflows</h3>
<p>Provider integrations and Nour require Pro or an applicable trial.</p>
</article>
</div>
</section>
</main>
<footer><p>Built by a fictional team for GitTree Learn. Review one change at a time.</p></footer>
<script type="module" src="site.js"></script>
</body>
</html>Index.html - समाधान किया गया
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>GitTree Features — course demo</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<header class="site-header">
<a href="#main">GitTree Features</a>
</header>
<main id="main" tabindex="-1">
<section class="hero" aria-labelledby="hero-title">
<p class="eyebrow">GitTree Learn demo project</p>
<h1 id="hero-title">Review each change with confidence.</h1>
<p id="hero-copy">Choose one change, then check what Git saved.</p>
</section>
<section class="features" aria-labelledby="features-title">
<h2 id="features-title">Follow your work</h2>
<div class="cards">
<article class="feature-card">
<h3>History</h3>
<p>Read commits and branches together.</p>
</article>
<article class="feature-card">
<h3>Changes</h3>
<p>Review the exact content selected for a commit.</p>
</article>
<article class="feature-card">
<h3>Recovery</h3>
<p>Inspect the scope of a recovery point before using it.</p>
</article>
</div>
</section>
<section aria-labelledby="plans-title">
<h2 id="plans-title">Choose the workflow you need</h2>
<div class="cards">
<article class="feature-card">
<h3>Local Git</h3>
<p>Local Git workflows work without signing in.</p>
</article>
<article class="feature-card">
<h3>Connected workflows</h3>
<p>Provider integrations and Nour require Pro or an applicable trial.</p>
</article>
</div>
</section>
</main>
<footer><p>Built by a fictional team for GitTree Learn. Review one change at a time.</p></footer>
<script type="module" src="site.js"></script>
</body>
</html>GitTree में
पैलेट को Command+Shift+P (Ctrl+Shift+P पर Ubuntu) से खोलें। किसी नामित शाखा पर कार्रवाइयां उस शाखा के राइट-क्लिक मेनू का उपयोग करती हैं।
- जैसा कि अगले भाग में दिखाया गया है, दो प्रतियाँ बनाएँ। gittree-conflict-merge खोलें,
conflict/saraचेक आउट के साथ। conflict/omarपर राइट-क्लिक करें और Merge conflict/omar into conflict/sara चुनें। Record it as के अंतर्गत Always a merge commit चुनें। संवाद चेतावनी देता है "1 फ़ाइल में विरोध के साथ रुक जाएगा"; Merge चुनें. मर्ज रुक जाता है, जो अपेक्षित परिणाम है।- The banner reads "Merging conflict/omar into conflict/sara" with "1 conflict", and Continue is not available yet: "Resolve the 1 conflicts first". Choose Resolve.
- Conflicted files से
index.htmlखोलें. दोनों पक्षों को पढ़ें, conflict/sara (current) और conflict/omar (incoming), और Base (common ancestor) को पढ़ने के लिए Show Base का उपयोग करें। - Edit Output चुनें, विरोधाभासी शीर्षक को
Review each change with confidence.से बदलें और हर दूसरी पंक्ति को रखें। फिर Save and Mark Resolved चुनें. मार्करों को हटाना और फ़ाइल को बंद करना पर्याप्त नहीं है। - बैनर पर वापस Continue चुनें। यदि कोई संदेश प्रस्तावित है, तो प्रस्तावित संदेश रखें। मर्ज समाप्त होने तक प्रतीक्षा करें: नई प्रतिबद्धता में दो माता-पिता हैं।
- gittree-conflict-rebase खोलें,
conflict/saraचेक आउट के साथ।conflict/omarपर राइट-क्लिक करें और Rebase conflict/sara onto conflict/omar चुनें। Options for this rebase के अंतर्गत विकल्पों को बंद छोड़ दें, फिर Rebase conflict/sara चुनें। यह संघर्ष के साथ रुकता है। - Resolve चुनें और
index.htmlखोलें। पक्ष अब conflict/omar (rebasing onto) और conflict/sara (your commit) हैं: भूमिकाओं की अदला-बदली हो गई। ऐसा ही करें Edit Output → Save and Mark Resolved, फिर Continue। - दोनों प्रतियों की जांच करें: फ़ाइल हल हो गई है, कोई विवादित फ़ाइल नहीं बची है और कोई बैनर नहीं दिख रहा है। दोनों परिणामों को अलग रखें और धक्का न दें।
पाठ्यक्रम में प्रत्येक सामान्य प्रतिबद्धता के लिए: Summary बताया गया विषय है, Description खाली है और विकल्प Amend Previous Commit, Skip Hooks, Add Signed-off-by, Different Author, Push After Commit और Allow Empty Commit बंद रहते हैं।
टर्मिनल में
पाठ 18 के परिणाम की एक अलग स्वच्छ प्रति में:
git switch --create conflict/sara
BASE_SHA="$(git rev-parse HEAD)"SARA को index.html के रूप में सहेजें, फिर:
git add -- index.html
git -c user.name="Sara Lindqvist" -c user.email=sara@example.com commit --quiet -m "feat: Sara clarifies the hero"
git switch --quiet --create conflict/omar "$BASE_SHA"OMAR को index.html के रूप में सहेजें, फिर:
git add -- index.html
git -c user.name="Omar Haddad" -c user.email=omar@example.com commit --quiet -m "feat: Omar explains the hero"
git switch --quiet conflict/saraकिसी भी प्रतिस्पर्धी प्रतिबद्धता से पहले, BASE_SHA एम है। इस विचलन की दो साफ़ प्रतिलिपियाँ बनाएँ, एक मर्ज के लिए और एक रीबेस (cd .. && cp -R gittree-features gittree-conflict-merge && cp -R gittree-features gittree-conflict-rebase) के लिए। मर्ज कॉपी में:
git merge --no-ff --no-edit conflict/omar
git ls-files --unmerged
git show :2:index.html
git show :3:index.htmlमर्ज निकास कोड 1 के साथ रुकता है और git ls-files --unmerged तीन प्रविष्टियों को सूचीबद्ध करता है, चरण 1, 2 और 3। git show :2:index.html सारा का संस्करण है (हमारा) और :3: उमर का (उनका) है; :1: आधार है. रिज़ॉल्व्ड को index.html के रूप में सहेजें, फिर:
git add -- index.html
git -c core.editor=true merge --continue
git ls-files --unmerged
git status --shortअंतिम दो कमांड कुछ भी प्रिंट नहीं करते हैं। अछूती रीबेस कॉपी में:
git rebase conflict/omar
git show :2:index.html
git show :3:index.htmlरिबेस रुक जाता है. अब :2: उमर का संस्करण है और :3: सारा का: भूमिकाओं की अदला-बदली हो गई है। रिज़ॉल्व्ड को index.html के रूप में सहेजें, फिर:
git add -- index.html
git -c core.editor=true rebase --continue
git ls-files --unmerged
git status --shortदोनों फ़ाइलें अब समान रूप से RESOLVED हैं और कुछ भी असंबद्ध नहीं है। core.editor=true केवल इस एक आदेश के लिए मौजूदा प्रतिबद्ध संदेश को स्वीकार करता है; यह आपकी संपादक सेटिंग नहीं बदलता. किसी रुके हुए ऑपरेशन को बिना समाधान किए छोड़ने के लिए, git merge --abort या git rebase --abort का उपयोग करें।
नतीजा
Where you end: मर्ज कॉपी में दो पैरेंट्स और संयुक्त शीर्षक के साथ एक नई प्रतिबद्धता है; रीबेस कॉपी में सारा की प्रतिबद्धता को उसी संयुक्त शीर्षक के साथ उमर की प्रतिबद्धता के साथ फिर से बनाया गया है। दोनों में, index.html समाधान के बराबर है, कोई विरोध प्रविष्टि नहीं बची है, ऑपरेशन समाप्त हो गया है और स्थिति साफ है।
सामान्य गलतियाँ
- "हमारा" मानने का मतलब हमेशा आपकी अपनी विशेषता है। इसका मतलब है कि Git जिस तरफ खड़ा है, और वह ऑपरेशन के साथ बदलता है।
- दोनों संस्करणों और बाकी फ़ाइल को पढ़ने से पहले एक तरफ थोक लेना ("सभी ले लो")।
- विरोध मार्करों को हटाना लेकिन फ़ाइल को कभी भी सहेजना और चिह्नित करना हल नहीं हुआ।
- किसी मर्ज या रीबेस को दोहराना जो पहले ही समाप्त हो चुका है।
अगर कुछ गलत होता है
यदि कोई स्टॉप गलत दिखता है, तो बैनर से Abort… उस स्थिति को पुनर्स्थापित करता है जहां से ऑपरेशन शुरू हुआ था और अब तक किए गए संकल्पों को हटा देता है; GitTree पहले पुनर्प्राप्ति स्नैपशॉट रखता है। यदि संपादन करते समय फ़ाइल बदल गई है, तो पुराने को सहेजने के लिए मजबूर करने के बजाय Compare और Use as Output विकल्पों का उपयोग करें। अपने ड्राफ्ट को बदलने से पहले उसकी एक प्रति अपने पास रखें।
अपनी समझ की जाँच करें
प्रत्येक प्रश्न का उत्तर दें, फिर क्यों पढ़ें। "आवश्यक" चिह्नित प्रश्न पाठ को पूरा करने में गिने जाते हैं।
6 में से 0 सही
पाठ को पूरा करने के लिए आवश्यक प्रश्नों के सही उत्तर दें।
इस ब्राउज़र में चेक किया गया.
अभ्यास करें
दोनों ऑपरेशनों के लिए चरण भूमिकाओं को git show :2:index.html और git show :3:index.html के साथ साबित करें, फिर उसी रिज़ॉल्व्ड फ़ाइल को सहेजें और प्रत्येक ऑपरेशन को समाप्त करें। अनुमान लगाइए कि यदि आपने आँख मूँद कर दोनों प्रतियों में "हमारा" ले लिया तो पृष्ठ में क्या बचेगा।
आपकी अपनी पुष्टि: साइट आपका कंप्यूटर नहीं देख सकती।
पाठ को पूरा करने के लिए आवश्यक प्रश्नों के सही उत्तर दें और व्यावहारिक अभ्यास की पुष्टि करें।
पुनर्कथन
- हमारी और उनकी भूमिका संचालन पर निर्भर करती है।
- पहले सहेजें और समाधान चिह्नित करें, फिर जारी रखें।
- बाद में संपूर्ण फ़ाइल और संचालन स्थिति की जाँच करें।
संबंधित
शब्दावली शब्द प्रस्तुत किये गये
संघर्ष - تعارض; आधार - الأساس; हमारा - نسختنا; उनका - نسختهم; संकल्प - حلّ.
वीडियो प्रतिलेख
वीडियो का वर्णन, संकेत दर संकेत।
प्रतिलिपि दिखाएँ
- संघर्ष कोई त्रुटि नहीं है. यह एक है प्रश्न केवल आप ही उत्तर दे सकते हैं।
- की एक ही लाइन को दो लोगों ने बदल दिया वही फ़ाइल.
- सारा ने एक हेडिंग लिखी. उमर ने लिखा दूसरा. दोनों की शुरुआत एक ही पेज से हुई.
- Git अनुमान नहीं लगा सकता कि कौन सी पंक्ति जीतती है, इसलिए यह रुकता है और तुमसे पूछता है.
- सबसे पहले, सारा और उमर की शाखाएँ बनाएँ, और दो समान प्रतियाँ।
- पहली प्रति में हम विलीन हो जाते हैं। दूसरे में, हम पुनः आधार बनाते हैं।
- मर्ज कॉपी खोलें, सारा की शाखा पर।
- उमर की शाखा पर राइट-क्लिक करें और उसका चयन करें मर्ज आदेश.
- संवाद पहले से ही चेतावनी देता है: यह बंद हो जाएगा एक फ़ाइल में विरोध के साथ.
- हमेशा मर्ज कमिट चुनें, फिर मर्ज चुनें एक बार. जैसा कि अपेक्षित था, यह रुक गया।
- बैनर एक संघर्ष को दर्शाता है। जारी रखें है अभी तक उपलब्ध नहीं है.
- समाधान चुनें, और Index.html खोलें।
- दो पक्ष: सारा की शाखा चालू है, उमर की आवक है.
- शो बेस से सामान्य पूर्वज का पता चलता है किसी भी बदलाव से पहले पेज।
- अब आउटपुट संपादित करें। शीर्षक को इसके साथ बदलें एक जानबूझकर पंक्ति.
- सहेजें और समाधान चिह्नित करें. केवल अब Git करता है फ़ाइल को हल हुआ मानें।
- बैनर पर वापस, जारी रखें चुनें। द विलय समाप्त.
- नई प्रतिबद्धता के दो माता-पिता हैं, और संयुक्त शीर्षक.
- अब रीबेस कॉपी, सारा की भी शाखा.
- उमर की शाखा पर राइट-क्लिक करें, और रीबेस करें उस पर सारा की शाखा।
- विकल्पों को छोड़ दें, और एक बार पुनः आधार बनाएं। यह द्वंद्व के साथ रुकता है.
- लेबल देखें. अब उमर की शाखा है जिस पर हम पुनः आधारित हैं।
- सारा की प्रतिबद्धता वही है जिसे दोबारा दोहराया जा रहा है। भूमिकाएँ बदल गई हैं।
- समान रिज़ॉल्यूशन: आउटपुट संपादित करें, फिर सहेजें और समाधान चिह्नित करें, फिर जारी रखें।
- ऊपर से सारा का कमिटमेंट दोबारा बनाया गया है उमर का, उसी शीर्षक के साथ।
- टर्मिनल में, असंबद्ध प्रविष्टियों को सूचीबद्ध करें रुके हुए मर्ज का.
- स्टेज दो हमारा है: सारा का शीर्षक। मंच तीन उनका है: उमर का.
- रुके हुए रिबेस में, चरण दो और तीन दूसरी तरफ हैं.
- सुधार के बाद, कुछ भी अलग नहीं होता है, और स्थिति रिक्त है.
- मर्ज कॉपी की टिप में दो माता-पिता हैं; द रीबेस कॉपी की टिप में एक है।
- इनपुट बदलें: मार्कर हटाएं और सहेजें, लेकिन हल हो गया चिह्नित न करें.
- Git अभी भी तीन चरणों को देखता है, इसलिए जारी रखें अनुपलब्ध रहता है.
- अटक गया? निरस्त करें शाखा को वापस वहीं रख देता है ऑपरेशन शुरू हुआ.
- GitTree पहले एक पुनर्प्राप्ति स्नैपशॉट सहेजता है, इसलिए गर्भपात भी सुरक्षित है।
- अपने से पहले कभी भी एक तरफ से सब कुछ न लें दोनों संस्करण पढ़ें.
- अभ्यास: दोनों में मंचीय भूमिकाएँ सिद्ध करें प्रतिलिपियाँ, फिर दोनों को समाप्त करें।
- इसके बाद, किसी ऑपरेशन को जारी रखें, छोड़ें या निरस्त करें वह बंद हो गया है.