Технологии извлечения и анализа данных

Коммиты

Функционал Git в Pastukhov Code доступен в двух местах: Git-боковая панель в каждом представлении чата для повседневных операций (индексация, коммиты, push, pull, stash) и страница Коммиты для просмотра и проверки полной истории коммитов.

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

Страница Коммиты показывает коммиты из репозитория проекта и репозитория навыков, с возможностью поиска, фильтрации по ветке и просмотра diff на уровне файлов. Коммиты также могут быть связаны с чатами — когда Claude Code создаёт коммит во время разговора, он автоматически связывается с этим чатом.


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

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

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

На боковой панели есть две вкладки — project и skills — каждая показывает состояние git своего репозитория. Значки на вкладках отображают количество изменённых файлов. Вкладка навыков появляется только когда включён Git для навыков в проекте.

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

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

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

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

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

Кнопка выпадающего меню Git Commits появляется в заголовке списка файлов. Она показывает значок с количеством коммитов, связанных с текущим чатом, и выпадающий список с последними коммитами (сообщение + относительное время). Нажмите на коммит, чтобы открыть его страницу деталей, или нажмите “Все коммиты” внизу, чтобы перейти на полную страницу Коммитов.

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

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

Боковая панель обновляется автоматически через SignalR — когда Claude Code индексирует, коммитит, отправляет или изменяет файлы, статус, список файлов и счётчик коммитов обновляются в реальном времени без ручного вмешательства. Также доступна кнопка обновления для ручной перезагрузки состояния git.


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

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

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

Нажмите на карточку репозитория, чтобы открыть его список коммитов.


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

Список коммитов для репозитория показывает каждый коммит с:

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

Список коммитов поддерживает:

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

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

Нажмите на коммит в списке, чтобы открыть его страницу деталей. Она показывает:

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

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


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

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

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

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

Кнопка “Обновить” в списке коммитов репозитория повторно импортирует коммиты из Git и обновляет ассоциации связей с чатами. Это полезно, если коммиты были сделаны вне Pastukhov Code и их нужно синхронизировать.


Меню Git Commits

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


Навигация

Раздел Коммиты использует хлебную крошку навигации:

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