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

Работа с Git

Плагин Koda интегрируется со встроенными инструментами контроля версий вашей среды разработки. Вы можете автоматически формировать сообщения коммитов по стандарту Conventional Commits, передавать изменения в диалог с моделью для проверки перед фиксацией и обращаться к истории коммитов.

Генерация сообщений коммитов

v1.3.0

Вместо того чтобы вручную формулировать текст коммита, вы можете доверить эту задачу Koda. Плагин изучает текущие изменения и составляет лаконичное описание в соответствии со спецификацией Conventional Commits.

  1. Откройте панель Система управления версиями (Source Control) (⌃⇧G / Ctrl + Shift + G).
  2. Подготовьте нужные файлы к коммиту (git add), если требуется зафиксировать только часть изменений.
  3. В поле ввода сообщения коммита нажмите кнопку генерации сообщения или вызовите палитру команд (⇧⌘P / Ctrl + Shift + P) и выберите команду Koda: Generate Commit Message.

v1.3.2

  1. Откройте окно или панель Commit (⌘0 / Alt + 0).
  2. Выберите файлы, которые планируете включить в коммит.
  3. На панели действий над полем ввода сообщения нажмите кнопку генерации сообщения Generate Commit Message либо воспользуйтесь поиском действий Find Action (⇧⌘A / Ctrl + Shift + A) и введите Koda: Generate Commit Message.

Как отбираются изменения

Koda учитывает состояние индекса Git:

  • если в репозитории есть подготовленные к коммиту изменения, сообщение составляется строго по ним;
  • если ни один файл не добавлен в индекс, плагин анализирует все текущие незакоммиченные изменения рабочей области;
  • если изменений в репозитории нет, Koda уведомит вас об этом и не станет изменять текущий текст поля.

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

Формат сообщения

Сгенерированное сообщение строится по правилам Conventional Commits:

  • начинается с типа изменений: feat, fix, chore, refactor, docs, test, perf или style;
  • содержит краткое описание сути правок длиной не более 80 символов;
  • вставляется напрямую в поле сообщения коммита без окружающих кавычек, лишних блоков кода и служебных пояснений модели.

Если вам требуется сформировать сообщение в собственном стиле или на русском языке, вы можете воспользоваться пользовательской слеш-командой с шаблоном {{diff}}.

Индикация и отмена

Пока модель анализирует дифф и создаёт текст, в поле сообщения коммита отображается анимированный статус KodaChat is generating....

Если вы передумали или генерация занимает слишком много времени, операцию можно отменить. При отмене или закрытии панели Koda возвращает в поле сообщения тот текст, который был введён до начала генерации.

Контекст Git в диалоге

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

  • @diff — добавляет текущие незакоммиченные изменения в контекст запроса. Это удобно для предварительной проверки кода перед коммитом: попросите модель найти забытые отладочные вызовы, потенциальные регрессии или несоответствие стилю проекта. Подробнее — в разделе Провайдер @diff.
  • @commit — позволяет выбрать недавние коммиты рабочей области и прикрепить их изменения к сообщению. Подробнее — в описании провайдера commit.

Безопасность при работе агента

В режиме агента модель имеет доступ к выполнению команд в терминале проекта. Однако внутренние правила Koda запрещают агенту самостоятельно выполнять git commit или отправлять код в удалённые репозитории без вашего явного запроса.

Все операции фиксации изменений и отправки веток остаются под вашим полным контролем. Подробнее о правилах поведения агента читайте на странице Правила и инструкции.