Gemini CLI: что возвращает /restore и почему checkpoint не заменяет резервную копию

cybercobra

Administrator
Команда форума
Регистрация
6 Авг 2025
Сообщения
912
Реакции
1
Баллы
777
Веб-сайт
cybercobra.ru
gemini-cli-checkpoints-restore-boundaries.jpg


Перед экспериментом с правками включите checkpointing, сохранение контрольных точек, и убедитесь, что точка действительно появилась.

Команда /restore полезна для возврата состояния проекта, но не является универсальной кнопкой отмены всего, что агент успел сделать.

Сценарий «применить изменения, проверить и вернуться назад» нужно подготовить до правок. Старые инструкции могут содержать уже удалённый флаг запуска.

Как включить контрольные точки и вернуться назад​


  1. В settings.json задайте general.checkpointing.enabled равным true. Текущая инструкция говорит, что функция по умолчанию выключена, а флаг --checkpointing удалён начиная с версии 0.11.0.
  2. Перед подтверждением инструмента изменения файлов убедитесь, что функция включена. При подтверждении поддерживаемого инструмента, например write_file или replace, CLI сохраняет снимок в отдельном локальном Git-репозитории, историю разговора и предложенный вызов инструмента. Ваш обычный Git-репозиторий при этом не заменяется.
  3. Для восстановления введите /restore без аргумента, выберите идентификатор из списка, затем выполните /restore с этим идентификатором. Возвращаются файлы из снимка и история диалога; исходный вызов инструмента предлагается снова. Не подтверждайте его автоматически, если как раз хотели отказаться от изменений.

Что важно сохранить заранее​


Сделайте отдельную копию ценных незакоммиченных изменений, ещё не сохранённых коммитом Git. В коде восстановления используется возврат файлов из снимка и очистка новых неотслеживаемых файлов.

/restore может затронуть поздние ручные изменения. Это не операция «убрать только правки ИИ, оставив всё моё». Игнорируемые Git файлы требуют отдельной стратегии резервирования.

Отправленное письмо, изменение удалённой базы, оплаченный запрос или развёртывание приложения (deployment) этим локальным снимком не отменяются. Для внешних действий заранее нужен собственный план отката.

Уже потраченные токены также не возвращаются от перемотки разговора.

Чем /restore отличается от /rewind​


Не путайте /restore с /rewind. Для rewind документация отдельно описывает варианты возврата разговора и правок, а также ограничение: ручные изменения и действия shell-инструмента не откатываются. Нельзя автоматически переносить эту гарантию на другой механизм.

После восстановления просмотрите diff, список изменений файлов, и запустите нужные проверки проекта. Наличие checkpoint говорит о сохранённом состоянии, а не о правильности кода.

Проверено 10 ноября 2026 года по документации и исходному коду; разрушительные эксперименты не проводились.
 
Последнее редактирование:
Назад
Сверху Снизу

Экосистема проектов TeleCobra

CyberCobra.ru — форум TeleCobra.com — софт для Telegram TeleCobra.ru — экосистема CyberMindBot — нейрокомментинг Spellbook Academy — AI обучение