Коммиты

Работа с Git в Pastukhov Agent доступна в двух местах. Для повседневных операций — индексация изменений, коммиты, push, pull, stash — есть Git-боковая панель в каждом чате. А полная история коммитов с поиском и просмотром изменений — на странице «Коммиты».

Git-боковая панель в Pastukhov Agent, показывающая вкладки репозиториев, изменённые файлы и быстрый коммит

На странице «Коммиты» видна история коммитов репозитория проекта: есть поиск, фильтр по ветке и просмотр изменений (diff) по каждому файлу. Коммиты связаны с чатами: когда агент коммитит изменения во время разговора, коммит автоматически привязывается к этому чату.


Git-боковая панель

Git-панель — основной инструмент для работы с Git прямо в чате. На компьютере она расположена в правой панели каждого чата, на телефоне — выдвигается снизу. Панель показывает состояние Git в реальном времени, позволяет быстро коммитить и управлять файлами в репозиториях Проекта и Навыков.

Вкладки Проект и Навыки

На панели есть вкладка project с состоянием git-репозитория проекта. На значке вкладки видно число изменённых файлов.

Статус и быстрый коммит

В верхней части вкладки видно текущую ветку и счётчики ahead/behind — насколько локальные коммиты обогнали сервер или отстали от него. Ниже — поле быстрого коммита, куда уже подставлено название чата как сообщение коммита. Как только появляются изменения, кнопка коммита становится активной: одно нажатие — и все изменения проиндексированы и зафиксированы.

Изменённые файлы

Список показывает все изменённые, добавленные, удалённые, переименованные и новые (не отслеживаемые) файлы с цветными пометками статуса. Любой файл можно отдельно снять с индексации или откатить. Кнопка Отменить всё возвращает все изменения. Здесь же операции синхронизации с удалённым репозиторием — pull (забрать чужие изменения), stash (отложить свои правки), unstash (вернуть отложенные) и stash/pull/rebase (отложить, забрать чужие и применить свои поверх).

Меню Коммитов

Кнопка меню коммитов стоит в заголовке списка файлов. На ней — число коммитов, связанных с текущим чатом; по нажатию открывается список последних коммитов (сообщение + относительное время). Клик по коммиту открывает его детали, а кнопка «Все коммиты» внизу ведёт на полную страницу «Коммиты».

Выпадающее меню коммитов, показывающее последние коммиты, связанные с текущим чатом

Обновление в реальном времени

Панель обновляется сама через SignalR — когда агент индексирует изменения, коммитит, отправляет на сервер или правит файлы, статус, список файлов и счётчик коммитов появляются мгновенно, без ручного вмешательства. Есть и кнопка обновления для ручной перезагрузки состояния Git.


Обзор коммитов

Главная страница «Коммиты» показывает карточки репозиториев — по одной на каждый (Проект и Навыки). В каждой карточке:

Страница обзора коммитов, показывающая карточки репозиториев с количеством коммитов
  • Название репозитория — «Project» или «Skills»
  • Всего коммитов — общее число коммитов в репозитории
  • Связанные коммиты — коммиты, созданные при работе с ИИ и привязанные к чатам
  • Несвязанные коммиты — коммиты без привязки к чату

Клик по карточке открывает список коммитов репозитория.


Список коммитов

В списке у каждого коммита видно:

  • Сообщение — заголовок коммита
  • Относительное время — когда сделан коммит (например, «2 часа назад»)
  • Ветка — к какой ветке относится коммит
  • Короткий хеш — первые 7 символов уникального номера коммита
  • Значок чата — если коммит связан с разговором, по значку можно открыть этот чат

Список коммитов умеет:

  • Поиск — текст из поля поиска фильтрует коммиты по сообщению, хешу или пути к файлу; результаты обновляются при вводе (с задержкой 300 мс)
  • Фильтр по ветке — значок ветки отфильтровывает коммиты нужной ветки; активный фильтр показывается значком с кнопкой «×» для сброса
  • Постраничная выдача — коммиты выводятся по 10 на странице, с кнопками навигации

Просмотр деталей коммита

Клик по коммиту в списке открывает его карточку. В ней:

Просмотр деталей коммита, показывающий полное сообщение коммита, изменённые файлы и просмотр diff
  • Полное сообщение коммита
  • Дата и время — полная дата в удобном виде
  • Ссылка на чат — если коммит связан с разговором, по ней открывается чат
  • Изменённые файлы — список файлов коммита, каждый с цветной пометкой статуса:
    • Added (добавлен) — зелёный
    • Deleted (удалён) — красный
    • Modified (изменён) — жёлтый
    • Renamed (переименован) — синий

Клик по любому файлу раскрывает его diff — наглядную разницу между старой и новой версией. Просмотр доступен бок о бок или построчно.


Связь чата и коммита

Когда Claude Code коммитит изменения во время разговора (например, вы попросили исправить ошибку, и агент зафиксировал исправление), коммит автоматически привязывается к этому чату. Так между вашими разговорами и изменениями кода появляется прослеживаемая связь.

Значок чата в списке коммитов, связывающий с соответствующим разговором в чате
Коммит, связанный с чатом, показывающий связь между разговором и изменениями кода

У связанных коммитов в списке и в карточке есть значок чата — он открывает разговор, который привёл к коммиту.

Кнопка «Обновить» в списке коммитов репозитория заново импортирует коммиты из Git и пересматривает их привязку к чатам. Это полезно, если коммиты делались вне Pastukhov Agent — их нужно синхронизировать.


Меню Git Commits

Меню коммитов в Git-боковой панели — быстрый доступ к коммитам текущего чата прямо из окна чата, без перехода на страницу «Коммиты».


Навигация

Раздел «Коммиты» устроен по хлебным крошкам:

  • Коммиты — обзор репозиториев (показывает все репозитории)
  • Коммиты → Project — список коммитов репозитория проекта
  • Коммиты → Project → abc1234 — карточка конкретного коммита (хеш копируется кнопкой)