Show Menu
Cheatography

Git commit message Cheat Sheet by

Оформление сообщений коммитов

Шаблон сообщения

!type(­?sc­ope): !subject
<?b­ody>
<?f­oot­er>

type: типы коммитов

test
указывает на любое создание или изменение кода тестов. Пример — создание модульных тестов.
feat
указывает на разработку новой функции для проекта. Примеры: добавление сервиса, функци­она­льн­ости, конечной точки и т.д.
refactor
исполь­зуется, когда происходит рефакт­оринг кода, не влияющий на логику­/пр­авила системы. Пример — изменения после ревью кода.
style
исполь­зуется при изменениях формат­иро­вания и стиля кода, которые никак не меняют систему. Примеры: смена руково­дства по стилю или соглашения о линтинге, исправ­ление отступов, удаление пробелов, удаление коммен­тариев и т.д….
fix
исполь­зуется при исправ­лении ошибок, которые порождают баги в системе. Пример — применение обработки для функции, которая ведет себя не так, как ожидалось, и возвращает ошибку.
chore
указывает на изменения в проекте, которые не влияют на систему или тестовые файлы. Это изменения, связанные с разраб­откой. Примеры: изменение правил для eslint, добавление prettier, добавление расширений файлов в .gitig­nore.
docs
исполь­зуется при изменениях в докуме­нтации проекта. Пример: добавление сведений в докуме­нтацию API, измение README и т.д.
build
исполь­зуется для указания изменений, которые влияют на процесс сборки проекта, или внешних зависи­мостей. Примеры: Gulp, добавл­ени­е/у­даление зависи­мостей npm и т.д..
perf
указывает на изменение, которое улучшает произв­оди­тел­ьность системы. Пример — замена ForEach на While.
ci
исполь­зуется для указания на изменения в конфиг­ура­ционных файлах CI. Примеры: Circle, Travis, Browse­rStack и т.д.
revert
указывает на отмену предыд­ущего коммита.
 

subject: сообщение коммита

Мы сообщаем нашей команде, что сделает коммит, если его применить. В английском языке нужно исполь­зовать повели­тельное наклон­ение, а не прошедшее время.

Пример: «If applied, this commit will…».
Аналог на русском: «При применении этот коммит <что сделае­т?>».

scope: контекст коммита

Прочитав тип коммита и его сообщение, разраб­отчик уже легко поймет, какое изменение было внесено и что принесет этот коммит, если его применить.

Несмотря на то, что атрибут scope не является обязат­ельным, его можно исполь­зовать для добавления контекста. Это позволит сделать сообщение коммита максим­ально кратким и лакони­чным. Помните, что область действия нужно указывать в скобках. Раздел­яются скоупы символом /.
Прмер :git commit -m "­fea­t(U­ser­Ser­vice): добавляет /getAp­poi­ntments эндпои­т"

Примечания

Для каждого коммита указыв­ается только один тип.
type — обязат­ельный атрибут.
Если вы не знаете, какой тип исполь­зовать, вероятно, это большое изменение, и можно разделить этот коммит на два или на большее число коммитов.
Разница между build и chore может быть довольно тонкой, что может привести к путанице. Поэтому важно знать, какой тип когда исполь­зовать. В случае с Node.js, например, мы можем считать, что когда происходит добавл­ени­е/и­зме­нение опреде­ленной зависи­мости разраб­отки, присут­ств­ующей в devDep­end­encies, мы используем chore. Для измене­ний­/до­бав­лений общих зависи­мостей проекта, которые оказывают прямое и реальное влияние на систему, мы используем build.

Прмеры

git commit -m "­test: добавляет тесты проверки автома­тич­еского создания продук­та"
git commit -m "­feat: добавляет реализацию сервиса отслеж­ивания продук­тов­"
git commit -m "­chore: добавляет правило no-ubdef в eslint­rc.j­so­n"
   
 

Comments

No comments yet. Add yours below!

Add a Comment

Your Comment

Please enter your name.

    Please enter your email address

      Please enter your Comment.

          Related Cheat Sheets

          Git Cheat Sheet
          Git Conventional Commit messages Cheat Sheet