# Соглашение о коммитах

Ниже представлена таблица с описанием того, какие типы (название <type> в конвенции выше) использовать в случае добавления нового commit-а:

Type Description Описание
feat A new feature Новая функция
fix A bug fix Исправление ошибки
docs Documentation only changes Изменения только в документации
style Changes that do not affect the meaning of the code (white-space, formatting etc) Изменения, не влияющие на смысл кода (пробелы, форматирование и т.д.)
refactor A code change that neither fixes a bug nor adds a feature Изменения в коде, не исправляющие ошибку и не добавляющие функциональность
perf A code change that improves performance Изменения в коде, улучшающие производительность
test Adding missing tests or correcting existing tests Добавление пропущенных тестов или исправление существующих
build Changes that affect the build system or external dependencies Изменения, влияющие на систему сборки или внешние зависимости
ci Changes to our CI configuration files and scripts Изменения в файлах и скриптах конфигурации CI
chore Other changes that don't modify src or test files Другие изменения, не модифицирующие файлы src или test
revert Reverts a previous commit Отмена предыдущего commit-а

Для обозначения типов коммитов можно также использовать эмодзи.

  1. Отделяйте заголовок от тела сообщения пустой строкой.
  2. Сообщение коммита не должно содержать никаких ошибок пробелов.
  3. Убирайте знаки пунктуации, в которых нет необходимости.
  4. Не ставьте точку в конце заголовка.
  5. Заголовок и каждый отдельный абзац должны начинаться с заглавной буквы.
  6. В заголовке сообщения используйте повелительное наклонение.
  7. Используйте тело сообщения, чтобы описать вносимые изменения и причины этих изменений.
  8. Не предполагайте, что ревьюер знает о проблеме, которую вы решаете: оговаривайте ее.
  9. Придерживайтесь соглашения о сообщениях коммитов, принятого в вашей команде.