Claude Codecode.claude.com
Claude Code 체크포인트로 되돌리기/rewind 사용법과 안 되는 경우
Claude Code가 파일을 잘못 고쳤을 때 /rewind 메뉴로 이전 상태로 되돌리는 법과, 체크포인트가 지켜 주지 못하는 경우를 알려 드려요.
안녕하세요, muaco입니다.
이 글로 할 수 있는 것
AI에게 파일 수정을 맡겼는데 엉뚱하게 고쳐 놓는 날이 있어요. 이럴 때 Claude Code는 손으로 하나하나 되돌리지 않아도 되게 저장 지점을 알아서 남겨 둬요. 이 저장 지점을 체크포인트라고 불러요. 이 글을 따라 하면 되돌리기 메뉴를 열고, 파일만 되돌릴지 대화까지 되돌릴지 골라 쓸 수 있게 돼요. 체크포인트가 지켜 주지 못하는 경우도 함께 짚어요. 이걸 모르면 믿고 있다가 크게 당해요.
미리 갖춰야 할 준비
- Claude Code가 설치되고 로그인된 상태여야 해요. 설치는 이 글에서 다루지 않아요. 공식 문서를 먼저 보고 오세요.
- 터미널에서 Claude Code를 켜 본 경험이 한 번은 있으면 좋아요. 터미널은 글자로 컴퓨터에 명령을 내리는 검은 창이에요.
- 연습용 폴더와 텍스트 파일 하나를 준비해요. 중요한 업무 파일로 처음 연습하면 마음이 급해져요. 예를 들어
연습폴더 안에메모.txt를 만들고 아무 문장이나 세 줄 적어 두세요.
이 글은 2026년 9월 기준 공식 문서를 보고 썼어요. 화면 문구는 버전에 따라 조금 다를 수 있어요.
체크포인트는 언제 저장되나
게임은 보통 문 앞이나 모닥불 앞에서 저장되죠. Claude Code의 저장 지점은 여러분이 새 요청을 보내는 순간이에요. 요청을 보내면 Claude가 일을 시작하기 직전의 파일 상태가 찍혀요. 그래서 "세 번째 요청 전으로 돌아가자"처럼 요청 단위로 되돌릴 수 있어요.
몇 가지 숫자도 알아 두면 좋아요. 한 세션(Claude Code를 켜서 이어 가는 대화 한 묶음)에서 파일 사본은 가장 최근 체크포인트 100개까지 보관돼요. 체크포인트는 대화와 함께 저장되니까, 세션을 닫았다가 다시 이어 열어도 /rewind를 쓸 수 있어요. 다만 세션이 마지막으로 사본을 남긴 뒤 기본 약 30일이 지나면 정리 작업이 사본을 지워요. 더 오래 두고 싶으면 설정의 cleanupPeriodDays 값을 늘리면 된다고 문서에 나와 있어요.
따라 하기: 되돌리기 메뉴 써 보기
1. 일부러 망쳐 보기
- 터미널에서
연습폴더로 들어가 Claude Code를 켜요. 입력칸이 보이면 준비가 끝난 거예요. - "메모.txt의 모든 줄을 영어로 바꿔 줘"라고 요청해요. 이 요청을 보내는 순간 바뀌기 전 상태가 저장돼요.
- Claude가 끝나면 메모 파일을 열어 봐요. 문장이 영어로 바뀌어 있으면 망가뜨리기 성공이에요.
2. 되돌리기 메뉴 열기
- 입력칸을 비운 채로
Esc를 두 번 눌러요. 입력칸에/rewind를 치고 엔터를 눌러도 같은 메뉴가 열려요. - 화면에 이번 세션에서 보낸 요청 목록이 뜨면 제대로 열린 거예요.
- 방향키로 "메모.txt의 모든 줄을 영어로 바꿔 줘"를 골라요. 이 요청을 보내기 직전으로 돌아가겠다는 뜻이에요.
여기서 다들 한 번 멈칫해요. 입력칸에 글자가 남아 있으면 Esc 두 번이 메뉴를 여는 대신 그 글자를 지워요. 겁먹을 것 없어요. 지워진 글은 입력 기록에 남아서, 메뉴 일을 마친 뒤 Up 키로 다시 불러올 수 있어요.
3. 되돌리는 방식 고르기
시점을 고르면 할 일을 묻는 선택지가 떠요. 서랍 정리에 빗대면 이래요. 서랍 속 물건만 옛날로 돌릴지, 정리하며 나눈 대화만 돌릴지, 둘 다 돌릴지 고르는 자리예요.
| 선택지 | 파일 | 대화 | 이럴 때 골라요 |
|---|---|---|---|
| Restore code and conversation | 되돌림 | 되돌림 | 처음부터 다시 시키고 싶을 때 |
| Restore conversation | 그대로 | 되돌림 | 파일은 마음에 드는데 대화 흐름만 다시 잡고 싶을 때 |
| Restore code | 되돌림 | 그대로 | 대화에서 오간 설명은 남기고 파일만 원래대로 돌리고 싶을 때 |
- 이번 연습에서는 Restore code를 골라요. 실수로 잘못 골랐다면 Never mind를 누르면 아무것도 바꾸지 않고 목록으로 돌아가요.
- 메모 파일을 다시 열어 봐요. 처음 적은 한국어 세 줄이 돌아와 있으면 성공이에요.
- 대화를 되돌리는 선택지를 골랐다면 그때 보낸 요청 문장이 입력칸에 다시 채워져요. 고쳐서 다시 보내면 돼요.
목록에 파일 되돌리기 선택지가 안 보일 수도 있어요. 고른 시점 뒤로 추적된 파일 수정이 없으면 두 가지 코드 복원 선택지는 아예 뜨지 않아요. 그때는 Restore conversation, 요약 선택지, Never mind만 나와요.
메뉴에는 Summarize from here와 Summarize up to here도 있어요. 이 둘은 파일을 건드리지 않아요. 긴 대화를 요약으로 눌러 담아 Claude가 기억할 공간을 비워 주는 기능이에요.
체크포인트가 지켜 주지 못하는 경우
체크포인트는 Claude가 파일 편집 도구로 직접 고친 내용만 기억해요. 아래 경우는 되돌리기 메뉴로 복구되지 않아요. 믿고 있다가 가장 많이 놀라는 부분이에요.
- Claude가 터미널 명령으로 바꾼 파일. Claude가
rm file.txt로 파일을 지우거나mv old.txt new.txt로 이름을 바꾸거나cp source.txt dest.txt로 복사했다면 되돌릴 수 없어요. 편집 도구가 아니라 명령(Bash)으로 한 일이라서 그래요. - 여러분이 Claude Code 밖에서 고친 내용. 메모장으로 직접 고쳤거나 다른 Claude Code 창에서 고친 내용은 보통 기록되지 않아요. 지금 세션이 고친 파일과 겹칠 때만 우연히 담겨요.
- 대부분의 서브에이전트가 고친 내용. 서브에이전트는 Claude가 따로 불러 일을 나눠 맡기는 조수예요. 앞에서 바로 도는 일부 경우를 빼면 되돌리기로 복구되지 않아요. 문서는 이럴 때 Git으로 되돌리라고 안내해요.
- Claude가 일하는 도중에 보낸 메시지. 작업이 돌고 있을 때 끼어든 메시지는 새 저장 지점을 만들지 않고 목록에도 안 떠요. 그 작업을 시작한 요청으로 돌아가야 해요.
- 바로가기 링크로 연결된 파일. 심볼릭 링크나 하드 링크(파일 하나를 여러 자리에서 가리키게 해 둔 연결)는 건너뛰어요.
막히기 쉬운 곳
Esc를 두 번 눌렀는데 메뉴가 안 떠요
입력칸에 글자가 남아 있는지 먼저 봐요. 글자가 있으면 두 번 누르기가 입력 지우기로 쓰여요. 한 번 더 두 번 누르거나 /rewind를 직접 쳐요. 터미널 프로그램에 따라 단축키가 다르게 먹을 수 있다고 문서에도 적혀 있어요.
"Restored the code, but skipped N files"가 떠요
대부분 되돌렸지만 몇 개 파일은 건너뛰었다는 경고예요. 링크로 연결된 파일이거나 권한 문제로 파일을 못 고친 경우예요. 건너뛴 파일은 지금 내용 그대로 남아요. 어떤 파일인지 보려면 복원하기 전에 /debug를 켜 두세요. ~/.claude/debug/<session-id>.txt 기록에 건너뛴 경로가 적혀요. 그 파일은 Claude에게 수정 내용을 반대로 되돌려 달라고 하거나 직접 고쳐요.
"No files were restored"가 떠요
파일을 하나도 되돌리지 못했다는 뜻이에요. 오래된 세션이라 약 30일 정리로 사본이 지워졌을 가능성이 먼저 보여요. 그 밖에 폴더 쓰기 권한이 없거나 디스크 공간이 모자랄 때도 나요. 권한과 공간을 확인한 뒤 한 번 더 시도하고, 그래도 안 되면 Git 같은 다른 백업에서 꺼내야 해요.
여기서 더 나아가려면
체크포인트는 세션 안에서 빠르게 무르는 장치예요. 오래 남길 기록이나 여러 사람과 나눌 이력은 문서도 Git으로 관리하라고 해요. 중요한 작업을 맡기기 전에 Git으로 한 번 저장해 두면, 명령으로 지운 파일까지 두 겹으로 지킬 수 있어요.
이상으로 글 마치겠습니다.
출처
같은 분류의 글
Claude Code · code.claude.com
Claude Code CLAUDE.md 사용법: 프로젝트 규칙을 한 번만 적어 두기
CLAUDE.md를 어디에 두고 무엇을 적어야 하는지 알면, Claude Code에 같은 설명을 매번 다시 하지 않아도 돼요.
Claude Code · code.claude.com
Claude Code 슬래시 명령 만들기: 파일 위치와 인자 넘기기
매번 똑같이 치던 긴 지시를 파일 한 장으로 저장해 두고, Claude Code에서 `/이름` 한 번으로 부르는 방법을 처음부터 따라 합니다.
Claude Code · code.claude.com
Claude Code 권한 설정: settings.json으로 확인 창 줄이기
settings.json에 권한 규칙을 적어 안전한 명령은 묻지 않고 지나가게 하고, 되돌리기 어려운 명령은 막는 방법을 단계별로 따라 합니다.