Практическое задание

Эта задача — шаг 2 курса «Выкатываем релиз»

Changelog списком из git log

легко~3 мин

К релизу 2.4.0 нужен changelog для заметки. Из репозитория /srv/billing выгрузи заголовки всех коммитов в /root/CHANGES.txt в виде маркированного списка: каждая строка — - (дефис и пробел) и сообщение коммита, без хешей, авторов и дат, самый свежий — сверху.

Что потренируешь:
  • git log
  • --pretty=format
  • плейсхолдеры
  • changelog
  • перенаправление

Разбор темы

Changelog релиза удобно собирать прямо из истории: если сообщения коммитов осмысленные, их заголовки уже готовые пункты списка. git log умеет печатать каждый коммит по собственному шаблону через --pretty=format:'…': в шаблоне обычный текст (например, маркер списка) смешивается с %-плейсхолдерами, каждый из которых подставляет свою часть коммита — хеш, автора, дату, заголовок. Порядок по умолчанию — от свежих к старым, как и принято в changelog. Результат перенаправляют в файл, а репозиторий вне текущего каталога указывают через git -C.

Что проверяется

  1. в changelog 4 строки
  2. свежий коммит сверху, первый — снизу
  3. каждая строка — пункт списка без хешей

Как это выглядит