Стандарт, который следует соблюдать при написании сообщений git commit

Я нахожу, что управляю очень многими файлами (более 60, но ниже 70), и мои сообщения о фиксации до сих пор следуют этому шаблону: когда я добавил что-то вроде layout.css, мое сообщение о совершении "добавлено что-то в файл layout.css", и когда я что-то удаляю, мое сообщение о совершении "удаляется из файла layout.css".

Некоторые файлы по строкам, я смотрю на свой фид коммитов и добавлен... и удалены... сообщения доминируют. Иногда я не помню, что я удалил или что добавил в layout.css, так как я делаю так много изменений при ходу, и поэтому я изо всех сил пытаюсь создать соответствующее сообщение о фиксации.

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

Ответ 1

Когда вы просто описываете, что вы сделали (в технических, но нечетких терминах, таких как "добавлена ​​функция" ), вы не добавляете много того, что Git уже хранит в фиксации. Представьте себе, что вы читаете сообщение о фиксации через некоторое время; какое резюме поможет вам самому запомнить/передать другим разработчикам суть этого изменения?! Точное содержание зависит от вашего проекта и процессов, но я считаю, что это хорошая рекомендация.

Поэтому, прежде всего, добавьте контекст (почему, а не как) с вашим сообщением фиксации (например, "frobnize message to enable persistence" ) вместо "добавлена ​​функция frob()" ). Это больше усилий (вы должны размышлять и думать), но это стоит гораздо больше.

Если вы хотите узнать больше об этой теме, там будет много информации, например в этой статье в блоге Питера Хаттерара или этот смешной слайд.

Ответ 2

Модель 50/72 кажется хорошей практикой. то есть... первая строка должна быть длиной 50 символов и должна быть сервером в качестве заголовка. Вслед за пробелом второй набор строк должен быть обернут в 72 символа и должен служить резюме. Вот вопрос SO: Git Commit Messages: 50/72 Форматирование, который обсуждает то же самое.

Вот несколько исчерпывающих замечаний по теме:

Ответ 3

Git уже знает, какие файлы вы модифицировали в фиксации, бесполезно указывать его в комментарии. Просто скажите, например, "исправлена ​​ошибка заполнения" или "добавлено меню на боковой панели". Дайте понять, что это.