Implementar um log de alterações

Concluído

O conceito de changelog é bastante simples: é um arquivo que tem uma lista de alterações feitas em um projeto, geralmente em ordem de data. A divisão típica é separar uma lista de versões e, em seguida, dentro de cada versão, mostrar:

  • Funcionalidades adicionadas
  • Recursos modificados/aprimorados
  • Recursos excluídos

Algumas equipes publicarão changelogs como postagens de blog; outros criarão um arquivo CHANGELOG.md em um repositório GitHub.

Ferramentas automatizadas de log de alterações

Embora os logs de alterações possam ser criados e mantidos manualmente, convém considerar o uso de uma ferramenta automatizada de criação de logs de alterações. Pelo menos como ponto de partida.

Usando comandos nativos do GitHub

O comando git log pode ser útil para criar conteúdo automaticamente. Exemplo: criar uma nova seção por versão:

git log [options] vX.X.X..vX.X.Y | helper-script > projectchangelogs/X.X.Y

Registo de alterações do Git

Uma ferramenta padrão é o gitchangelog. Esta ferramenta é baseada em Python.

Gerador de changelog do GitHub

Outra ferramenta padrão é chamada github-changelog-generator.

$ github_changelog_generator -u github-changelog-generator -p TimerTrend-3.0

Esta ferramenta é baseada em Gem.

Você deve usar dados baseados em log gerados automaticamente?

A preferência é sempre evitar despejar entradas de log em um changelog. Os logs são "barulhentos", por isso é fácil gerar uma bagunça que não é útil.