Coolkid mascot CoolkidLab Build in Public. Level up together.

新手教學 · 疑難排解

閱讀

Claude Code 改壞了怎麼辦?Rewind 倒帶教學

先講重點

短答給趕時間的人:rewind(倒帶)是 Claude Code 內建的後悔藥 — 它在你每次下指令之前自動幫專案存檔,AI 把東西改壞了,連按兩下 Esc(或輸入 /rewind)就能倒帶回去,不用會 git、不用事先設定。倒帶時可以選:只回檔案、只回對話、或兩個一起。但有些東西倒不回去 — 已經推上線的、terminal 指令做過的事。我實測過:倒帶了對話,推出去的更新原封不動留在線上。

會認真研究這功能,是因為我常遇到一種場景:同一件事想讓 AI 試好幾種做法。最近一次是幫股票數據站做「籌碼分佈」圖表 — 同一份數據,前後試了 5 種畫法給主理人挑。當時我還不知道有 rewind,走的是另一條路:用 git(工程師的版本存檔工具)自己設存檔點。這禮拜把官方的 rewind 完整玩了一遍,這篇講它怎麼用、哪些東西救不回來,以及跟我原本那條路的誠實對照。

Rewind 是什麼?跟 Ctrl+Z 差在哪

rewind 的邏輯一句話:Claude Code 在你每次送出指令之前,自動幫專案拍一張快照。所以你隨時可以「回到我下第三個指令之前的樣子」— 不用事先做任何設定,存檔是全自動的。叫出來的方式兩種:連按兩下 Esc,或輸入 /rewind,會出現一排時間點讓你挑。

跟你熟悉的 Ctrl+Z 差在範圍:Ctrl+Z 救的是「剛剛打錯的字」,rewind 救的是「AI 這一輪動過的所有檔案」— 它可能一口氣改了八個檔,你不用一個一個救。倒帶時還能選要回什麼:只回檔案(對話繼續)、只回對話(檔案保留)、或兩個一起回。我最常用的是只回檔案:程式回到改壞之前,但 AI 還記得剛剛的討論,你可以接著說「剛剛那樣不行,換個方式」。

白話比喻:rewind 是電玩的自動存檔點 — 打輸了讀檔重來,而且存檔是系統自動幫你按的,你只管衝。

我的真實場景:同一份數據,5 種畫法給主理人挑

先講我還不知道 rewind 時的做法。場景:股票數據網站的「籌碼分佈圖」— 把每天哪些券商據點在什麼價位買賣了多少,畫成一張圖。同一份數據,呈現方式有很多種,主理人要親眼看到才挑得下去。我前後做了 5 種:泡泡圖、成本震波圖、鏡像莖圖、價位帶對開圖、疊在 15 分 K 線上的進場位置圖。

當時的做法是用 git 自己設存檔點:每做完一版存一次,要看上一版就跳回去。最後主理人挑了震波圖 — 專案紀錄裡到現在還留著那筆「成本圖回震波」的存檔,整趟試錯路徑全部有跡可循。這條路的好處是每一版都永遠留著、隨時能並排比較;代價是你要會 git,而且要記得「先存檔再試下一版」— 忘記存,那一版就被蓋掉了。

如果那時有 rewind,同一件事可以更省力:試一版、倒帶、試下一版,存檔點系統自動幫你設。但注意 — 「更省力」不等於「更好」,差別在下下段講。

實測:哪些回得去、哪些回不去

這禮拜實測時,我特地做了一個實驗:把對話倒帶回幾個指令之前,然後看哪些東西真的回去了。結果:對話回去了、電腦裡的檔案回去了 — 但已經推上線的更新,一個都沒少,網站還是新版。

東西倒帶救得回嗎
AI 改過的檔案(還在你電腦裡)✅ 回得去
對話紀錄✅ 回得去(可選)
terminal 指令做過的事(裝套件、刪檔案)❌ 回不去
已經推上線 / 部署出去的東西❌ 回不去
資料庫裡被改掉的資料❌ 回不去

所以 rewind 的守備範圍要記清楚:它管的是「AI 在你電腦裡動過的檔案」。東西一旦離開你的電腦(推上線、進資料庫),或者是 terminal 指令的副作用(裝了套件、刪了檔案),就超出它能倒帶的範圍。實務上的保命習慣只有一條:改壞的當下先別急著推上線 — 還沒推,幾乎什麼都救得回;推了,就要走別條路。

兩條路誠實對照:事前斷點 vs 事後倒帶

事前斷點(git)事後倒帶(rewind)
要先學東西嗎要會 git 基本操作零門檻,內建
要記得存檔嗎要,忘了存就被蓋掉不用,每個指令前自動存
能跳到哪你設過存檔點的位置任何一個指令之前
存檔活多久永遠(專案紀錄的一部分)對話範圍內的短期後悔藥
適合場景每版都要留、給客戶挑、做好幾天一場對話內的快速試錯

誠實說,我現在還講不出孰優孰劣 — 這是兩條不同的路,不是新的取代舊的。我的暫行判斷法:一場對話裡的探索(試個做法、改個樣式),用 rewind,零成本隨時反悔;要把每個版本都留下來給人挑、或這件事會做好幾天,git 斷點不可取代 — rewind 的存檔點不是為「長期保存多個版本」設計的,git 才是。

給新手的順序建議:先用 rewind。它讓你在還不會 git 的階段就敢放手讓 AI 改東西 — 反正倒帶不用錢。等哪天你發現自己需要「同時留著五個版本給別人挑」,再學 git 也不遲。工具的意義是讓你敢動手,不是逼你先上課。

rewind 是 Claude Code 內建的倒帶機制:每次下指令前自動存檔,連按兩下 Esc 或輸入 /rewind 就能回去,可選只回檔案、只回對話、或兩個一起 — 零設定、不用會 git。守備範圍是「AI 在你電腦裡動過的檔案」:terminal 副作用(裝套件、刪檔)、已推上線的更新、資料庫資料都回不去(實測:倒帶對話後,推上線的東西原封不動)。跟 git 斷點是兩條路:git 事前設存檔、每版永遠留著,適合給客戶挑版本、跨天專案(我做 5 種籌碼圖給主理人挑就是走這條);rewind 事後隨時倒,適合對話內快速試錯。新手先用 rewind 敢動手,需要長期留版本再學 git。保命習慣一條:改壞當下先別推上線。

名詞解釋

Git
程式碼的版本紀錄系統:每次改動存成一個「存檔點」(commit),隨時可以回溯、比對、還原,不怕改壞。
提交(commit)
Git 的一個存檔點:把這次改動連同一句說明記錄下來,之後隨時可以回到這個版本。
終端機(terminal)
「用文字指令操作電腦的視窗」的統稱。Mac 叫 Terminal,Windows 上就是 PowerShell,兩者角色相同。
部署(deploy)
把做好的網站或程式「推上線」讓所有人用得到的動作。
命令列(CLI, Command Line Interface)
用打字指令操作電腦的方式,沒有按鈕跟視窗。Claude Code 就是命令列工具。

這篇是收斂後寫的版本。
我每兩週寄一封電子報,講「正在做但還沒寫成文章」的東西——
包含每月幫你過濾值得花時間的新 AI 工具,
以及 Lab 新文的個人版(你會比公開版早一週收到)。

→ 訂閱(雙週一封,第一封自動寄起步清單)

跳轉 Substack、隨時取消、不轉賣 email。

如果內容對你有用就太好了
隨喜斗內

Buy Me a Coffee at ko-fi.com
NEXT CHAPTER ▸ Claude Code 卡住沒反應?5 個原因與解法

常見問題

Claude Code 把程式改壞了怎麼救回來?

連按兩下 Esc 或輸入 /rewind,挑一個時間點倒帶 — Claude Code 在你每次下指令前都會自動存檔,不用事先設定。可以選只回檔案(對話繼續聊)、只回對話、或兩個一起。前提:壞掉的東西還在你電腦裡 — 已經推上線或部署出去的,rewind 救不回,要走 git 或重新部署的路。

Rewind 跟 Ctrl+Z、git 差在哪?

範圍不同。Ctrl+Z 救單一檔案裡剛打錯的字;rewind 救「AI 這一輪動過的所有檔案」,可能一次八個檔一起回;git 是永久的版本存檔,每一版都留著、跨對話跨機器都在。粗略分工:打錯字用 Ctrl+Z、這場對話內反悔用 rewind、要長期保存多個版本用 git。

Rewind 有什麼救不回來的?

三類:一是 terminal 指令的副作用 — 裝過的套件、刪掉的檔案不會復原;二是已經離開你電腦的東西 — 推上線的更新、部署出去的網站、資料庫裡的資料;三是它只追蹤 AI 改的檔案。我實測過:倒帶對話之後,推上線的更新原封不動留在線上。所以改壞的當下先別推,幾乎都救得回。

不會 git 能放心讓 AI 改程式嗎?

現在可以比較放心了:rewind 內建、零設定,等於系統自動幫你按存檔,改壞了倒帶就好。新手建議先靠 rewind 放膽試;等出現「要同時留好幾個版本給人挑」「這專案要做好幾週」的需求,再學 git — 那是另一條事前設斷點的路,兩條路各有適用場景,不是誰取代誰。

看完這篇之前先確認:

適合你
  • 怕 AI 把專案改壞,每次都不太敢讓它動手的人
  • 想讓 AI 試好幾種做法,又怕上一版被蓋掉
  • 還不會 git,想知道能不能先不學
不適合
  • 東西已經推上線才想救 (rewind 救不到,原因見內文)
  • 要長期保存多個版本給團隊挑 (那是 git 的主場)
  • 想找對話紀錄的匯出備份方法 (不同主題)
最常踩
  • 以為 rewind 什麼都能倒 — terminal 副作用與已上線的東西回不去
  • 把 rewind 當版本控制用 — 它是對話內的後悔藥,不是長期存檔
  • 改壞當下急著推上線 — 推之前幾乎都救得回,推了就難救

← 回新手教學

⚠ 本站所有內容僅供教育與研究用途,不構成投資建議,不保證任何獲利。投資有風險,使用者須自行判斷並承擔結果。