3.0 KiB
3.0 KiB
🛠️ Conventional Commits
Conventional Commits — соглашение о формате сообщений коммитов
📝 Основные тезисы Conventional Commits
- Разработчик должен придерживаться следующей структуры коммитов:
<type>(<scope>): <subject>
<body>
<footer>
- У коммита должен быть заголовок, может быть тело и нижний колонтитул.
- Заголовок коммита должен начинаться с типа (type), указывающего на специфику внесенных в кодовую базу изменений, и завершаться описанием. Примеры типов приведены на изображении:
- Наряду с обязательными feat, fix (использование которых строго регламентировано), допускаются и другие типы.
- У коммита может быть область (scope). Она характеризует фрагмент кода, которую затронули изменения. Область следует за типом коммита. Стандарт не регламентирует четкий список областей. Примеры областей: eslint, git, analytics и т.д.
- Описание коммита должно быть сразу после типа/области.
- Тело коммита может быть использовано для детализации изменений. Тело должно быть отделено от описания пустой строкой.
- Нижний колонтитул следует использовать для указания внешних ссылок, контекста коммита или другой мета информации. Нижний колонтитул должен быть отделен от тела пустой строкой.
- В Нижнем колонтитуле можно указать BREAKING CHANGE - изменение в коде, которое ломает обратную совместимость. То есть, после такого изменения код, который раньше работал с этим модулем/библиотекой/функцией, может перестать работать.
- Чтобы указать breaking change, нужно:
- Добавить в описание
BREAKING CHANGE:и пояснение; - Или поставить в типе коммита восклицательный знак (
!).
📝 Примеры
Примеры Conventional Commits можно увидеть в git log репозитория. Все коммиты были написаны с использованием CC.