Как работает checkpointing
По мере работы с Claude, checkpointing автоматически фиксирует состояние вашего кода перед каждой правкой. Эта защитная сетка позволяет вам браться за амбициозные, масштабные задачи, зная, что вы всегда можете вернуться к предыдущему состоянию кода.Автоматическое отслеживание
Claude Code отслеживает все изменения, внесённые его инструментами редактирования файлов:- Каждый запрос пользователя создаёт новый checkpoint
- Checkpoints сохраняются между сеансами, поэтому вы можете получить к ним доступ в возобновлённых беседах
- Автоматически очищаются вместе с сеансами через 30 дней (настраивается)
Перемотка и суммирование
НажмитеEsc дважды (Esc + Esc) или используйте команду /rewind для открытия меню перемотки. Прокручиваемый список показывает каждый из ваших запросов из сеанса. Выберите точку, на которой вы хотите действовать, затем выберите действие:
- Восстановить код и беседу: вернуть как код, так и беседу в эту точку
- Восстановить беседу: перемотать к этому сообщению, сохраняя текущий код
- Восстановить код: отменить изменения файлов, сохраняя беседу
- Суммировать отсюда: сжать беседу с этой точки вперёд в краткое резюме, освобождая место в context window
- Отмена: вернуться к списку сообщений без внесения изменений
Восстановление и суммирование
Три варианта восстановления отменяют состояние: они отменяют изменения кода, историю беседы или оба. “Суммировать отсюда” работает иначе:- Сообщения перед выбранным сообщением остаются нетронутыми
- Выбранное сообщение и все последующие сообщения заменяются компактным резюме, созданным ИИ
- Никакие файлы на диске не изменяются
- Исходные сообщения сохраняются в стенограмме сеанса, поэтому Claude может ссылаться на детали при необходимости
/compact, но целевое: вместо суммирования всей беседы вы сохраняете ранний контекст в полной детализации и сжимаете только части, которые занимают место. Вы можете ввести дополнительные инструкции для руководства тем, на чём должно сосредоточиться резюме.
Суммирование держит вас в одном сеансе и сжимает контекст. Если вы хотите ответвиться и попробовать другой подход, сохраняя исходный сеанс нетронутым, используйте вместо этого fork (
claude --continue --fork-session).Типичные случаи использования
Checkpoints особенно полезны, когда:- Исследование альтернатив: попробуйте различные подходы к реализации без потери вашей начальной точки
- Восстановление после ошибок: быстро отмените изменения, которые внесли ошибки или нарушили функциональность
- Итерация функций: экспериментируйте с вариантами, зная, что вы можете вернуться к рабочим состояниям
- Освобождение места контекста: суммируйте многословный сеанс отладки с середины вперёд, сохраняя ваши исходные инструкции нетронутыми
Ограничения
Изменения команд Bash не отслеживаются
Checkpointing не отслеживает файлы, изменённые командами bash. Например, если Claude Code запускает:Внешние изменения не отслеживаются
Checkpointing отслеживает только файлы, которые были отредактированы в текущем сеансе. Ручные изменения, которые вы вносите в файлы вне Claude Code, и правки из других одновременных сеансов обычно не фиксируются, если они не изменяют те же файлы, что и текущий сеанс.Не замена для контроля версий
Checkpoints предназначены для быстрого восстановления на уровне сеанса. Для постоянной истории версий и сотрудничества:- Продолжайте использовать контроль версий (например, Git) для коммитов, веток и долгосрочной истории
- Checkpoints дополняют, но не заменяют надлежащий контроль версий
- Думайте о checkpoints как о “локальной отмене” и Git как о “постоянной истории”
См. также
- Interactive mode - Сочетания клавиш и элементы управления сеансом
- Built-in commands - Доступ к checkpoints с использованием
/rewind - CLI reference - Параметры командной строки