Um gerador rápido de changelog que origina alterações de PRs e problemas do GitHub, organizados por rótulos.
Crie um changelog desde a última versão do GitHib até a tag/commit git HEAD atual para o repositório git no diretório atual:
crônica
Crie um changelog com todas as alterações da v0.16.0 até a tag/commit git HEAD atual para o repositório git no diretório atual:
crônica --since-tag v0.16.0
Crie um changelog entre duas tags específicas para um repositório no caminho fornecido
crônica --since-tag v0.16.0 --until-tag v0.18.0 ./path/to/git/repo
Crie um changelog e adivinhe a versão de lançamento a partir do conjunto de alterações no changelog
crônica -n
Apenas adivinhe a próxima versão de lançamento com base no conjunto de alterações (não crie um changelog)
crônica próxima versão
curl -sSfL https://raw.githubusercontent.com/anchore/chronicle/main/install.sh | sh -s -- -b /usr/local/bin
...ou você pode especificar uma versão de lançamento e um diretório de destino para a instalação:
curl -sSfL https://raw.githubusercontent.com/anchore/chronicle/main/install.sh | sh -s -- -b
Caminhos de pesquisa de configuração:
.chronicle.yaml
.chronicle/config.yaml
~/.chronicle.yaml
Opções de configuração (valores de exemplo são o padrão):
# o formato de saída do changelog# igual a -o, --output e CHRONICLE_OUTPUT env varoutput: md# suprime todas as saídas de registro# igual a -q ; CHRONICLE_QUIET env varquiet: false# all logging optionslog: # usa log estruturado # igual a CHRONICLE_LOG_STRUCTURED env var estruturado: false # o nível de log # igual a CHRONICLE_LOG_LEVEL env var level: "warn" # local para gravar o arquivo de log (o padrão é não tem um arquivo de log) # igual a CHRONICLE_LOG_FILE env var file: ""# adivinhe qual será a próxima versão baseada na versão atual e no conjunto de alterações (não pode ser usado com --until-tag)# igual a --speculate- próxima versão / -n ; CHRONICLE_SPECULATE_NEXT_VERSION env varspeculate-next-version: false# substitui a tag git inicial do changelog (o padrão é detectar a última versão automaticamente)# igual a --since-tag / -s ; CHRONICLE_SINCE_TAG env varsince-tag: ""# substitui a tag git final para o changelog (o padrão é usar a tag ou confirmar em git HEAD)# igual a --until-tag / -u ; CHRONICLE_SINCE_TAG env varuntil-tag: ""# se a versão de lançamento atual for...] # Consulte a seção "Definições de alteração padrão do GitHub" para obter mais detalhes
O configurável github.changes
é uma lista de mapeamentos, cada um com os seguintes campos:
name
: [string] singular, minúsculo, separado por hífen (sem espaços) nome que melhor representa a mudança (por exemplo, "alteração significativa", "segurança", "recurso adicionado", "aprimoramento", "novo recurso", etc).
title
: [string] título da seção no changelog listando todas as entradas.
semver-field
: as entradas de alteração [string] irão colidir com o respectivo campo semver ao adivinhar a próxima versão de lançamento. Valores permitidos: major
, minor
ou patch
.
labels
: [lista de strings] todos os rótulos de problemas ou PR que devem corresponder a esta seção de alteração.
O valor padrão para github.changes
é:
- nome: correções de segurança título: Correções de segurança semver-field: rótulos de patch: - segurança - vulnerabilidade - nome: recurso adicionado título: Recursos adicionados semver-field: rótulos secundários: - aprimoramento - recurso - menor - nome: correção de bug título: Correções de bugs semver-field: rótulos de patch: - erro - consertar - correção de bug - correção - nome: título do recurso de última hora: Mudanças de última hora semver-field: grandes gravadoras: - quebrando - incompatível com versões anteriores - mudança significativa - recurso de quebra - principal - nome: recurso removido título: Recursos removidos semver-field: rótulos principais: - removido - nome: recurso obsoleto título: Recursos obsoletos semver-field: rótulos secundários: - obsoleto - nome: título desconhecido: alterações adicionais