Символы в коммитах - польза или зло?

Несколько лет назад я подсмотрел интересный метод оформления commit-сообщений: в начале каждого сообщения ставится один из символов + - ! =. В этой статье - небольшие мысли по поводу таких сокращений.

Вот, собственно, и сами условные обозначения:

  • + добавлено
  • - удалено
  • = изменение в текущем функционале
  • ! исправлено
  • Х% сделано на Х процентов

Данная тема неоднократно порождала холиварчики приличного объема среди моих друзей-программистов. Одни считали, что сокращения слов в символы - это очень удобно потому, что можно быстро визуально определить, что было сделано в это коммите. Другие утверждали, что это излишне, и новые разработчики, пришедшие в проект, будут с трудом входить в данный способ изъяснения. (Это далеко не полный список возражений по этому поводу.)

И данный кусочек содержится в каждом README моих проектов для того, чтобы новый разработчик мог прочитать и понять, что же значит эта “загадочная” “морзянка”.

И все-таки, в чем трудность запомнить 5 символов и не писать added / deleted/removed / edited / updated / fixed / created / not fully implimented / ...? Да, значения слов повторяются, как они и повторяются в реальной жизни. Если нужно будет выполнить поиск всех добавлений нового функционала, то нужно будет искать, например, created, added... Английский язык не столь многогранен, как русский, но все же…

Стоп, а если коммит-сообщения еще и на двух языках? Еще больше вариантов надо учесть при поиске.

Вот, например, использование этих условных обозначений в проекте ClienD extension.

Намного проще писать просто один сивмол в начале каждого коммита, который будет охарактеризовать его тип, ведь так?