Repolode
semantic-release

semantic-release/semantic-release

Automatiza o versionamento semântico, a geração de changelogs e a publicação de pacotes na CI com base nas mensagens de commit.

Estrelas
24,162
Forks
1,807
Issues abertas
407
Último commit
ontem

O que é?

semantic-release automatiza o fluxo de publicação de pacotes: determina o próximo número de versão, gera notas de lançamento, cria uma tag Git e publica o pacote. O aumento de versão é definido pelas mensagens de commit, que seguem uma convenção formal: uma correção gera uma versão patch, uma funcionalidade gera uma versão minor e uma alteração incompatível gera uma versão major.

A ferramenta foi projetada para rodar em um ambiente de integração contínua depois que os testes passam em uma branch de lançamento, como main ou next. Cada etapa, da verificação das condições à publicação e ao envio de notificações, é gerenciada por plugins, permitindo adaptar o mesmo fluxo a diferentes gerenciadores de pacotes e linguagens. Canais de distribuição, como as dist-tags do npm, permitem que os mantenedores publiquem pré-lançamentos e versões de manutenção a partir de branches separadas.

A convenção de commit padrão é a do Angular, e os plugins de análise de commits e geração de notas de lançamento aceitam opções para alterá-la. O suporte à procedência de pacotes npm adiciona atestações assinadas durante publicações feitas pelo GitHub Actions.

Recursos principais

  • 01Calcula o próximo número de versão do Semantic Versioning com base nas mensagens de commit
  • 02Gera notas de lançamento e changelogs automaticamente
  • 03Cria tags Git e publica pacotes no npm e em outros canais
  • 04Oferece suporte a canais de distribuição, como as dist-tags do npm, para pré-lançamentos e branches de manutenção
  • 05Pode ser estendido com plugins para diferentes gerenciadores de pacotes e linguagens
  • 06Oferece suporte à procedência de pacotes npm em publicações feitas pelo GitHub Actions

Casos de uso

  • Publicar uma biblioteca npm a cada merge na branch main sem precisar atualizar as versões manualmente
  • Manter builds de pré-lançamento em uma branch beta ou next com dist-tags separadas
  • Manter os changelogs consistentes ao adotar uma convenção de mensagens de commit em toda a equipe

Início rápido

  1. 1

    Hospede seu código em um repositório Git e configure um serviço de CI com Node.js e Git CLI que atendam aos requisitos de versão

  2. 2

    Siga o guia oficial de introdução para instalar e configurar o semantic-release

  3. 3

    Execute o comando semantic-release no CI após uma compilação bem-sucedida na branch de lançamento

    semantic-release

Antes de usar

  • Os lançamentos dependem de mensagens de commit que sigam uma convenção formalizada, como a do Angular.
  • Ele precisa ser executado em um ambiente de CI com credenciais configuradas com segurança, portanto não é uma ferramenta independente para uso manual.
  • A configuração exige um repositório Git e uma versão do Node.js que atenda aos requisitos do projeto.

Em coleções

Tópicos

Perguntas frequentes

O que é semantic-release?
Automatiza o versionamento semântico, a geração de changelogs e a publicação de pacotes na CI com base nas mensagens de commit. semantic-release automatiza o fluxo de publicação de pacotes: determina o próximo número de versão, gera notas de lançamento, cria uma tag Git e publica o pacote. O aumento de versão é definido pelas mensagens de commit, que seguem uma convenção formal: uma correção gera uma versão patch, uma funcionalidade gera uma versão minor e uma alteração incompatível gera uma versão major.
semantic-release é gratuito? Qual é a licença?
semantic-release é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
semantic-release ainda é mantido?
Manutenção ativa. O último commit de semantic-release foi em 6 de nov. de 2026.
Para que posso usar semantic-release?
Publicar uma biblioteca npm a cada merge na branch main sem precisar atualizar as versões manualmente Manter builds de pré-lançamento em uma branch beta ou next com dist-tags separadas Manter os changelogs consistentes ao adotar uma convenção de mensagens de commit em toda a equipe
Como instalar semantic-release?
Hospede seu código em um repositório Git e configure um serviço de CI com Node.js e Git CLI que atendam aos requisitos de versão Siga o guia oficial de introdução para instalar e configurar o semantic-release Execute o comando semantic-release no CI após uma compilação bem-sucedida na branch de lançamento: semantic-release
Onde consigo semantic-release?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/semantic-release/semantic-release

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados

Uma CLI que automatiza o npm publish com verificações prévias, atualização de versão, tags do git, testes e pushes, reunindo o processo de release em uma execução interativa.

7,7 mil+2 esta semana314JavaScriptMITBem mantidoAtualizado há 14 dias