Перейти к содержанию

Панель изменений

Панель изменений показывает, что именно поменялось в проекте, не открывая отдельный git-клиент. Она полезна, когда нужно проверить правки агента перед коммитом или приложить дифф к следующему запросу.

Как открыть

Нажмите кнопку Изменения git на панели инструментов чата. Панель откроется справа, а чат останется слева.

Панель изменений git с разбором диффа Панель изменений git с разбором диффа

Панель изменений git с разбором диффа

Кнопка доступна, когда у чата есть проект. Если проект не является git-репозиторием, панель сообщит об этом.

Что показывать

В заголовке панели есть список области:

  • Эта сессия — файлы, которые агент изменил в текущем чате;
  • Все незакоммиченные — рабочее дерево целиком, включая правки вне чата;
  • Сообщение N — изменения, относящиеся к конкретному сообщению.

По умолчанию открывается Эта сессия. Для каждого сообщения сохраняется снимок состояния файлов, поэтому старые сообщения не показывают правки, сделанные позже.

Рядом видно текущую ветку и её upstream, а также сколько коммитов впереди или позади. Счётчик +N −M в заголовке суммирует добавленные и удалённые строки по всем файлам.

Список файлов

Каждый файл показан отдельным блоком:

  • буква статуса: M — изменён, A — добавлен, D — удалён, R — переименован, U — новый и не отслеживается, ! — конфликт слияния;
  • имя файла и папка;
  • число добавленных и удалённых строк;
  • развёрнутый дифф с номерами строк.

Кнопка в заголовке блока сворачивает и разворачивает дифф. Если строк много, сначала показывается часть, а остальное раскрывается кнопкой Показать ещё N строк. Бинарные файлы и слишком большие диффы помечаются отдельной плашкой.

Кнопка Список файлов открывает боковую колонку с фильтром: удобно, когда изменений много. Кнопка разворота растягивает панель на всё окно.

Действия с файлами

У каждого файла есть две кнопки:

  • Упомянуть файл в сообщении — вставляет @путь в поле запроса;
  • Приложить diff к сообщению — добавляет дифф текстовым вложением.

В заголовке панели кнопка Упомянуть все изменённые файлы добавляет в запрос сразу весь список путей. Это удобно перед просьбой «проверь эти изменения» или «напиши сообщение коммита».

Ограничения

Снимок сессии не безграничен:

  • служебные папки и файлы — .git, node_modules, .env и .env.*, dist, build, .next, coverage — не учитываются;
  • бинарные файлы в него не попадают;
  • файлы больше 1 МБ пропускаются, а общий объём снимка ограничен 20 МБ;
  • при очень большом числе изменений список обрезается.

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

В этих случаях панель показывает предупреждение.

О ветках, коммитах и pull — на странице функций git.