Files
methodologies/conventional-commits/README.md
2025-05-31 10:49:20 +00:00

3.0 KiB
Raw Blame History

🛠️ Conventional Commits

Conventional Commits — соглашение о формате сообщений коммитов


📝 Основные тезисы Conventional Commits

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

📝 Примеры

Примеры Conventional Commits можно увидеть в git log репозитория. Все коммиты были написаны с использованием CC.