生活分享

Claude Code|Checkpoint 與 /rewind

區分回復對話、回復檔案與 Git 還原。Checkpoint 與 /rewind 可以在 Claude Code 工作階段內回到先前的對話或受追蹤檔案狀態。本篇會用一個主標題修改練習三種還原選擇,並說明哪些變更不在範圍內。你會知道它適合快速回復局部嘗試,但不能代替 Git、資料備份或外部操作的補救流程。

閱讀時間約 5 分鐘

Checkpoint 與 /rewind:文件、螢幕與完成記號的幾何插圖
圖片:Mokaair (© Mokaair)
本篇目錄
  1. Checkpoint 保存什麼
  2. 建立一個容易辨認的修改
  3. 先練習只還原程式
  4. 比較對話還原與全部還原
  5. 哪些操作不能依賴 rewind
  6. 摘要功能與完成判準

Checkpoint 與 /rewind 可以在 Claude Code 工作階段內回到先前的對話或受追蹤檔案狀態。本篇會用一個主標題修改練習三種還原選擇,並說明哪些變更不在範圍內。你會知道它適合快速回復局部嘗試,但不能代替 Git、資料備份或外部操作的補救流程。

請在的獨立副本操作,先保存原始材料或建立 Git 基準。不要一開始就用多 session、或命令搬檔做還原實驗,因為不同操作的追蹤條件不同。本篇先讓 Claude 透過一般檔案編輯工具修改 index.html。

Checkpoint 保存什麼

Checkpoint 保存什麼 → 建立一個容易辨認的修改 → 先練習只還原程式
Checkpoint 保存什麼 → 建立一個容易辨認的修改 → 先練習只還原程式 · 圖片:Mokaair (© Mokaair)
閱讀完整文字說明

Checkpoint 與 /rewind,以流程和文件圖形呈現教學重點。

Claude Code 會為開始新回合的提示建立檢查點,追蹤其檔案編輯工具造成的變更。檢查點與對話一起保存,有保留數量與清理期限,並不是無限期版本倉庫。對長期歷史與多人協作,仍應使用。

還原選項對話變化檔案變化
Restore code and conversation回到選定位置回復受追蹤變更
Restore conversation回到選定位置保留目前檔案
Restore code保留目前對話回復受追蹤變更
Summarize 選項壓縮指定對話範圍不修改檔案

有些選项只在選定檢查點存在可還原檔案時出現。若目前只是只讀聊天,沒有看到 Restore code 不一定是故障。先確認這個回合是否真的透過檔案編輯工具產生變更,再看選單內容。

建立一個容易辨認的修改

先打開 index.html 記下目前 h1 文字,啟動 Claude 並要求只改主標題。明確保留其他檔案與功能,方便之後判斷還原範圍。完成後看差異,確認實際使用的是檔案編輯,而不是 shell 腳本直接改寫。

Claude Code 對話框:建立可回復的練習變更 · text
請透過檔案編輯工具,把 index.html 的可見主標題改為「Checkpoint 練習」。
只改這段文字,不使用 shell 腳本修改檔案,不建立 Git 提交。
完成後指出實際差異,方便我練習 rewind。

檢查檔案已出現新標題,再輸入 /rewind 開啟選單。也可以依介面支援使用空白輸入時連按兩次 Esc;若輸入框已有文字,快捷鍵可能先清除輸入,所以初學直接用指令比較清楚。

Claude Code 對話框:開啟檢查點選单 · text
/rewind

先練習只還原程式

選擇啟動主標題修改的提示,閱讀可用動作,使用 Restore code。完成後對話仍保留你要求修改與回報的歷史,但 index.html 應回到原標題。這是刻意讓對話與檔案分開,用來理解兩種狀態的差別。

還原後的 Claude Code 對話框:核對檔案 · text
請重新讀取 index.html,回報目前 h1 文字。
對照剛才修改前後的內容,確認是否已回復。
先不要再次套用修改,也不要依對話中的舊回報猜測。

同時用編輯器或 Git diff 核對。若畫面還顯示舊內容,先確認瀏覽器是否重新整理與伺服器是否對應同一資料夾。還原成功與預覽更新是兩個檢查步驟,不應只看聊天回覆判斷。

比較對話還原與全部還原

再次做一次小標題修改,這次選 Restore conversation。你會回到先前對話位置,但檔案仍保持修改後內容;因此接下來的提示應先重新讀檔,不能假設磁碟也已回復。若想同時回復兩者,才選 Restore code and conversation,並再檢查檔案差異。

每次實驗只改同一段文字,保留清楚的原值與新值。這樣你能分辨選項效果,而不是在複雜功能修改中猜哪些行應該存在。選錯時先停止新的修改,查看目前檔案與對話,再決定下一個動作。

哪些操作不能依賴 rewind

shell 命令造成的檔案刪除、搬移或改寫不屬於一般檔案編輯追蹤;外部服務、資料庫操作、Git 推送與部署也不能靠對話還原撤銷。其他 session 與多數子代理的變更通常不在主 session 的還原範圍,符號連結或硬連結檔案也有跳過限制。

例如測試命令產生了一份輸出檔,rewind 回到命令前並不保證它消失;如果已把訊息送到外部服務,對話回退也不會收回訊息。這些情況要使用各自的版本、備份或補償操作,並驗證外部狀態。

若檢查點已超過保留範圍或快照被清理,還原可能失敗。看到「沒有檔案被還原」或「部分檔案跳過」時,讀取具體紀錄,不要把部分成功寫成全部完成。先查看受影響檔案,再決定使用 Git 或手動反向修改。

若你在 Claude 修改後又手動調整同一檔案,先保存手動差異再做還原。檢查點回復可能影響重疊區域,不能假設它會理解哪些行屬於你想保留的工作。這也是先用單一標題練習、再處理複雜修改的原因。

摘要功能與完成判準

rewind 的摘要選項可以只整理對話的一段,適合保留後半段工作或壓縮冗長調查。它們不會更動磁碟檔案,也不是還原的別名。需要整體上下文整理時,請參考。

小練習是以主標題依序比較只還原程式、只還原對話與兩者一起還原,記錄每次的對話位置和 h1 文字。完成判準是能預測三個選項的差別,知道沒有追蹤的操作需另行處理,並保留一份 Git 或原始材料作為長期基準。熟悉後再將它用於較大的功能嘗試。

回總目錄

  • 生活分享

    Claude Code|建立第一個 mod:在 Claude Code 行程內數工具呼叫

    寫一個三檔案的 mod,用驗證器與測試確認它掛上的事件。文件把 mod 定義成多了入口檔的 plugin:入口檔叫 hooks module,Claude Code 在事件發生時呼叫裡面的函式,函式可以觀察、改寫或接手事件。

  • 生活分享

    Claude Code|Git Worktree 平行工作

    隔離多個任務的檔案與分支。Git Worktree 讓同一儲存庫擁有多個工作目錄,各自使用分支與檔案。本篇會把待辦篩選與文件整理分開,確認兩個 session 不會直接改到彼此的檔案,再把其中一個成果整合回主分支。你也會知道何時可以安全清理工作目錄。

  • 生活分享

    Claude Code|雙 Worktree 實作與衝突整合

    隔離兩項功能,最後完成整合與回歸。兩個 Claude 工作階段同時編輯專案,最容易出現的問題是互相改到同一份檔案,或各自測試通過、整合後卻失敗。本篇用兩個 Worktree 分別處理篩選預設值與介面文字,故意製造一次小衝突,再完成整合、驗證與清理。你不需要先啟用 Agent Teams。

  • 生活分享

    Claude Code|比較流程品質、用量與執行時間

    以同一資料集比較兩種工作方法。比較兩種 Claude 工作方法時,不能只挑成功那一次,也不能只看第一個答案有多快。本篇用固定案例、原始紀錄和一致判準,比較品質、重試、等待與人工整合時間,最後寫出有樣本數與限制的報告,而不是保證某個方法一定省錢。

最新旅遊情報攻略

資料來源

生活分享