मुख्य कंटेंट तक स्किप करें

चेकपॉइंट और रिवाइंड

मध्यम
What you'll learn
  • समझें कि चेकपॉइंट क्या कैप्चर करता है — और क्या चुपचाप कैप्चर नहीं करता
  • रिवाइंड मेनू को दो तरीकों से खोलें और हर बार सही रिस्टोर क्रिया चुनें
  • 'रिस्टोर' (स्थिति पूर्ववत करना) और 'समराइज़' (संदर्भ संपीड़ित करना) में अंतर पहचानें
  • ठीक-ठीक जानें कि चेकपॉइंट Git के पूरक क्यों हैं, पर उसकी जगह कभी नहीं ले सकते

मुख्य विचार​

जब आप Claude को किसी महत्वाकांक्षी, व्यापक बदलाव पर खुला छोड़ते हैं, तो सबसे डरावना सवाल होता है "अगर तीसरे संपादन तक पहुँचकर कुछ बिगड़ गया तो?" चेकपॉइंटिंग इसका जवाब है: Claude Code आपके शुरू किए हर टर्न से पहले आपके कोड का स्नैपशॉट अपने-आप ले लेता है, ताकि आप किसी भी पिछली स्थिति में वापस जा सकें, और अधूरे रिफैक्टरिंग को हाथ से सुलझाना न पड़े।

इसे पूरे सत्र के लिए एक लोकल अनडू समझें — एक सुरक्षा जाल जो आपको बिना डर के कहने देता है "हाँ, साहसी तरीक़ा आज़माओ।"

चेकपॉइंट कैसे बनते हैं​

आप चेकपॉइंट नहीं बनाते — वे अपने-आप बनते हैं।

Guided walkthrough1 of 4
  1. हर वह प्रॉम्प्ट जो एक टर्न शुरू करता है, Claude के फ़ाइल-संपादन टूल चलने से पहले आपके कोड की स्थिति कैप्चर करता है। कोई कमांड नहीं, कोई कॉन्फ़िग नहीं, कोई औपचारिकता नहीं।

रिवाइंड मेनू खोलना​

भीतर जाने के दो रास्ते हैं:

Guided walkthrough1 of 2
  1. प्रॉम्प्ट पर स्लैश कमांड टाइप करें। हमेशा काम करता है। /checkpoint और /undo उसी कमांड के उपनाम (alias) हैं, इसलिए जो नाम याद आए वही इस्तेमाल करें।

रिवाइंड मेनू खोलें

/rewind
Watch out
  • उपनामों के नाम शाब्दिक अर्थ से ज़्यादा सहज हैं: /checkpoint माँगने पर स्नैपशॉट नहीं लेता (स्नैपशॉट अपने-आप बनते हैं), और /undo अपने आप आख़िरी संपादन को पूर्ववत नहीं करता। तीनों नाम एक ही मेनू खोलते हैं, जहाँ बिंदु और कार्रवाई आप ही चुनते हैं।

मेनू इस सत्र में आपके भेजे हर प्रॉम्प्ट की सूची दिखाता है। वह बिंदु चुनें जिस पर आप कार्रवाई करना चाहते हैं, फिर एक क्रिया चुनें।

रिस्टोर बनाम समराइज़: मुख्य अंतर​

यहीं लोग उलझते हैं। मेनू दो तरह की क्रियाएँ देता है:

  • रिस्टोर क्रियाएँ डिस्क पर और/या बातचीत में स्थिति बदलती हैं — वे पूर्ववत करती हैं।
  • समराइज़ क्रियाएँ आपकी फ़ाइलों को कभी नहीं छूतीं — वे संदर्भ विंडो में जगह खाली करने के लिए बातचीत को संपीड़ित करती हैं।
Watch out
  • रिस्टोर = अनडू (कोड, बातचीत, या दोनों को वापस ले जाता है)। समराइज़ = संदर्भ संपीड़न (डिस्क पर फ़ाइलें अछूती रहती हैं)।
  • जब किसी संपादन ने कुछ तोड़ा हो तो रिस्टोर चुनें। जब सत्र फूल गया हो पर कोड ठीक हो तो समराइज़ चुनें।

रिस्टोर क्रियाएँ​

Guided walkthrough1 of 3
  1. आपकी फ़ाइलों और चैट हिस्ट्री, दोनों को चुने हुए बिंदु तक वापस ले जाता है — उस क्षण तक एक साफ़ 'समय में वापसी'।

दोनों कोड रिस्टोर विकल्प केवल तभी दिखते हैं जब चुने हुए चेकपॉइंट में वापस लेने लायक ट्रैक किए गए फ़ाइल बदलाव हों। अगर उस बिंदु के बाद कोई फ़ाइल संपादन कैप्चर नहीं हुआ, तो मेनू केवल बातचीत रिस्टोर करें, दोनों समराइज़ विकल्प, और Never mind (जो बिना कुछ बदले संदेश सूची पर लौटा देता है) देता है।

बातचीत रिस्टोर करने के बाद (या "यहां से समराइज़ करें" चुनने के बाद), चुने हुए संदेश का मूल प्रॉम्प्ट इनपुट फ़ील्ड में वापस डाल दिया जाता है ताकि आप उसे दोबारा भेज या संपादित कर सकें।

समराइज़ क्रियाएँ​

दोनों बातचीत के एक हिस्से को AI-जनित सारांश में संपीड़ित करती हैं — एक लक्षित /compact की तरह, जहाँ आप चुनते हैं कि चुने हुए संदेश का कौन-सा पक्ष दबाना है।

Guided walkthrough1 of 2
  1. चुने हुए संदेश से पहले के संदेश अक्षुण्ण रहते हैं। चुना हुआ संदेश और उसके बाद का सब कुछ सारांश बन जाता है। किसी भटकी हुई चर्चा को हटाते हुए शुरुआती संदर्भ को पूरे विवरण के साथ रखने के लिए इसका उपयोग करें।

दोनों ही स्थिति में मूल संदेश सत्र ट्रांसक्रिप्ट में बने रहते हैं, इसलिए Claude अब भी विवरणों का हवाला दे सकता है, और जहाँ संपीड़ित संदेश थे वहाँ एक Summarized conversation मार्कर दिखाई देता है। सारांश किस पर केंद्रित हो, यह तय करने के लिए तीर कुंजियों से किसी समराइज़ विकल्प को हाइलाइट करें और जहाँ पंक्ति में add context (optional) लिखा हो वहाँ निर्देश टाइप करें, फिर Enter दबाएँ — विकल्प को उसकी नंबर कुंजी से चुनने पर बिना किसी निर्देश के तुरंत समराइज़ हो जाता है।

पूरे प्रवाह के लिए संदर्भ प्रबंधन देखें — /rewind की समराइज़ क्रियाएँ एक नश्तर हैं, जहाँ /compact एक चौड़ा ब्रश है।

What you'll learn
  • समराइज़ आपको उसी सत्र में रखता है। मूल सत्र को जस का तस रखते हुए अलग राह पकड़कर कोई दूसरा तरीक़ा आज़माने के लिए इसके बजाय /branch या claude --continue --fork-session का उपयोग करें।

/clear के पार रिवाइंड करना​

अगर आपने उसी Claude Code प्रोसेस में पहले /clear चलाया था, तो रिवाइंड मेनू में सबसे ऊपर एक अतिरिक्त प्रविष्टि दिखती है: /resume <session-id> (previous session)। /clear से पहले जो बातचीत चालू थी, उस पर वापस जाने के लिए इसे चुनें।

जहाँ चेकपॉइंट रुक जाते हैं — वे सीमाएँ जो चुभती हैं​

चेकपॉइंट तब तक जादुई लगते हैं जब तक वे नहीं लगते। ये कमियाँ मायने रखती हैं:

Guided walkthrough1 of 7
  1. ट्रैकिंग फ़ाइल-दर-फ़ाइल होती है, और कोई फ़ाइल उसमें तभी आती है जब Claude उसे अपने फ़ाइल-संपादन टूल से संपादित करता है। ऐसा होने के बाद /rewind उस बाद वाले काम को भी पलट देता है जो Bash कमांड उसी फ़ाइल के साथ करते हैं — पहले से संपादित फ़ाइल को दोबारा लिखने वाला फ़ॉर्मैटर या जनरेटर भी रिवाइंड किया जा सकता है। जिस फ़ाइल को केवल Bash ने छुआ है वह ट्रैक नहीं होती और जैसी है वैसी रहती है, इसलिए rm से मिटाई गई ऐसी फ़ाइल, जिसे Claude ने कभी संपादित नहीं किया, के लिए Git चाहिए। मेनू यही दर्शाता है: हर प्रॉम्प्ट के नीचे वह उन फ़ाइलों में हुए बदलाव गिनता है जिन्हें Claude पहले संपादित कर चुका था, चाहे उन्हें किसी भी चीज़ ने किया हो।

चेकपॉइंट बनाम Git: दोनों का उपयोग करें​

वे अलग-अलग समस्याएँ हल करते हैं, इसलिए दोनों को साथ रखें।

चेकपॉइंट (/rewind)Git
दायराएक सत्रपूरे प्रोजेक्ट का इतिहास
ग्रैन्युलैरिटीहर टर्न शुरू करने वाले प्रॉम्प्ट पर, स्वचालितहर कमिट पर, सोच-समझकर
बैश से हुए बदलाव ट्रैक करता है?केवल उन फ़ाइलों पर जिन्हें Claude पहले संपादित कर चुका हैहाँ (स्टेज/कमिट होने के बाद)
जीवनकालअंतिम 100 चेकपॉइंट, सत्र के लगभग 30 दिन बाद स्वीपस्थायी
साझा करने योग्य / सहयोगीनहींहाँ
मानसिक मॉडल"लोकल अनडू""स्थायी इतिहास"
Pro tip
  • जोखिम भरे, व्यापक रन से पहले Git से काम करती स्थितियाँ कमिट करें — वही आपकी टिकाऊ ज़मीन है।
  • कमिट के बीच अपने Git इतिहास को गंदा किए बिना सत्र के भीतर तेज़ रिकवरी के लिए /rewind का उपयोग करें।
  • जिन फ़ाइलों को Claude कभी सीधे संपादित नहीं करता — यानी जिन्हें केवल विनाशकारी bash (rm/mv) या बैकग्राउंड सबएजेंट छूता है — उनके लिए Git पर भरोसा करें। रिवाइंड किसी फ़ाइल को तभी कवर करता है जब Claude उसे अपने फ़ाइल टूल से संपादित कर चुका हो।

कब इसका सहारा लें​

Guided walkthrough1 of 4
  1. कोई साहसी इम्प्लीमेंटेशन आज़माएँ, और अगर पसंद न आए तो कोड और बातचीत को फ़ोर्क बिंदु तक रिस्टोर करके दूसरा रास्ता आज़माएँ।

खुद को परखें

0/3
  1. Claude ने `config.old.json` को अपने फ़ाइल टूल से कभी संपादित नहीं किया, फिर bash कमांड में `rm` से उसे मिटा दिया। क्या `/rewind` उसे वापस ला सकता है?
  2. आपका कोड ठीक है, पर डीबगिंग के एक लंबे भटकाव ने संदर्भ विंडो भर दी है। कौन-सी क्रिया उपयुक्त है?
  3. चेकपॉइंट कैसे बनता है?
चेकपॉइंट और रिवाइंड शब्दावली
कार्ड पलटने के लिए Enter या Space दबाएँ। कार्ड बदलने के लिए बाएँ और दाएँ तीर कुंजियों का उपयोग करें।शब्द दिखाया गया।
1 / 6
Key takeaways
  • चेकपॉइंट हर टर्न शुरू करने वाले प्रॉम्प्ट से पहले लिए गए स्वचालित स्नैपशॉट हैं — सत्र के लिए एक लोकल अनडू। अंतिम 100 रखे जाते हैं, फिर सत्र के लगभग 30 दिन बाद स्वीप होते हैं।
  • रिवाइंड मेनू /rewind (उपनाम: /checkpoint, /undo) से या खाली इनपुट पर डबल-Esc से खोलें; यह आपके भेजे हर प्रॉम्प्ट की सूची दिखाता है।
  • रिस्टोर क्रियाएँ स्थिति (कोड, बातचीत, या दोनों) को पूर्ववत करती हैं; समराइज़ क्रियाएँ संदर्भ संपीड़ित करती हैं और फ़ाइलों को कभी नहीं छूतीं।
  • ट्रैकिंग फ़ाइल-दर-फ़ाइल होती है और तब शुरू होती है जब Claude उसे अपने फ़ाइल टूल से संपादित करता है — उसके बाद उस फ़ाइल में Bash के बदलाव भी रिवाइंड होते हैं। जिन फ़ाइलों को Claude ने कभी संपादित नहीं किया (केवल bash, बाहरी, समवर्ती, ज़्यादातर सबएजेंट) वे ट्रैक नहीं होतीं, और सिमलिंक या हार्ड लिंक वाले पथ restore के समय छोड़ दिए जाते हैं।
  • चेकपॉइंट Git के पूरक हैं, उसकी जगह नहीं लेते: सोचें 'लोकल अनडू' बनाम 'स्थायी, साझा करने योग्य इतिहास'।

आगे​

  • संदर्भ प्रबंधन — /compact, /clear, और समराइज़ बड़ी तस्वीर में कहाँ बैठता है
  • Plan Mode — संपादन चलने से पहले जाँचें और योजना को मंज़ूर करें, ताकि आपको कम बार रिवाइंड करना पड़े
  • अनुमतियाँ — महत्वाकांक्षी कार्यों को सुरक्षित रूप से चलाने का दूसरा आधा हिस्सा