Конвенция коммитов
Конвенция сообщений коммитов в Git
Это адаптировано из Angular's commit convention.
TL;DR:
Заголовки коммитов должны совпадать со следующим выражением:
/^(revert: )?(feat|fix|docs|style|refactor|perf|test|workflow|build|ci|chore|types|wip)(\(.+\))?: .{1,72}/;
Полный формат сообщения
Сообщение о фиксации состоит из заголовка, тела и запятой. Заголовок имеет тип, область и субъект:
<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>
Заголовок является обязательным, и область заголовка заголовка является необязательной.
Реверт
Если коммит вернет предыдущее коммит, он должен начинаться с «revert:», после чего следует заголовок отмененного коммита. В теле сообщения должно быть написано: Это отменяет коммит <hash>.
, где хэш - это SHA отменяемого коммита.
Тип
Если префикс имеет значение feat
, fix
или perf
, он будет отображаться в журнале изменений. Однако, если есть BREAKING CHANGE, коммит всегда будет отображаться в журнале изменений.
Другие префиксы - на ваше усмотрение. Рекомендуемые префиксы: docs
, chore
, style
, refactor
и test
для задач, не относящихся к ченджлогу.
Область применения
Область действия указывает на то, в каком разделе приложения произошли изменения, например, SlashCommand
, ContextMenu
или MessageComponents
Тема
Тема содержит краткое описание изменений:
- Используйте императив, настоящее время: "измениться", а не "изменился" или "изменяется"
- не пишите первую букву с заглавной буквы
- Не заканчивайте сообщение точкой (.)
Тело
Как и в субъекте, используйте императив, настоящее время Тело должно включать мотивацию изменения и разницу с предыдущим поведением.
Подвал
Нижний колонтитул должен содержать информацию о Общих изменениях, а также место для ссылки на проблемы GitHub, которые этот коммит закрывает.
Обновляющие изменения должны начинаться со слова Обновляющие изменения:
через пробел или две новые строки. Для этого используется остальная часть сообщения коммита.