Padronizando Commits com Commitizen e Husky

Os commits bem estruturados são essenciais para manter a clareza e organização em projetos de desenvolvimento de software. Quando várias pessoas colaboram em um projeto, é crucial manter um padrão para mensagens de commit, facilitando a compreensão das…


This content originally appeared on DEV Community and was authored by Edson Costa

Os commits bem estruturados são essenciais para manter a clareza e organização em projetos de desenvolvimento de software. Quando várias pessoas colaboram em um projeto, é crucial manter um padrão para mensagens de commit, facilitando a compreensão das alterações realizadas em um determinado momento. Neste artigo, exploraremos como padronizar commits usando as ferramentas Commitizen e Husky.

Por que padronizar commits?

Padronizar commits traz uma série de benefícios para equipes de desenvolvimento:

  1. Clareza: Mensagens de commit bem estruturadas tornam mais fácil entender o propósito das alterações.
  2. Rastreabilidade: Com commits padronizados, é mais simples rastrear a evolução do código ao longo do tempo.
  3. Facilidade de Reversão: Commits bem documentados facilitam a identificação de alterações específicas, tornando mais fácil reverter mudanças indesejadas.
  4. Colaboração: Padronizar commits promove uma melhor colaboração entre membros da equipe, pois todos seguem as mesmas convenções.

Introdução ao Commitizen e Husky

Commitizen é uma ferramenta que visa facilitar a criação de commits padronizados seguindo as convenções do Conventional Commits. Ele fornece uma interface interativa para guiar os desenvolvedores na criação de mensagens de commit consistentes.

Husky, por outro lado, é uma biblioteca que nos permite configurar ganchos (hooks) Git facilmente. Podemos usá-lo para executar scripts automatizados antes de certos eventos do Git, como commit, push e outros.

Passos para padronizar commits com Commitizen e Husky

Aqui estão os passos necessários para padronizar commits em seu projeto:

1. Instalação do Commitizen e Husky

Certifique-se de que o Node.js esteja instalado em seu sistema. Em seguida, instale o Commitizen e Husky como dependências de desenvolvimento em seu projeto:

npm install --save-dev commitizen husky

2. Configuração do Commitizen

Depois de instalar o Commitizen, você pode configurá-lo para seu projeto executando o seguinte comando:

npx commitizen init cz-conventional-changelog --save-dev --save-exact

Isso instalará o adaptador cz-conventional-changelog e configurará o Commitizen para usar o Conventional Commits.

3. Configuração do Husky

Com o Husky, podemos configurar ganchos Git para executar scripts antes de certos eventos. Para configurar o Husky, adicione o seguinte script ao seu package.json:

"husky": {
  "hooks": {
    "commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
  }
}

Este script usa o commitlint para verificar se a mensagem de commit está em conformidade com as convenções especificadas.

4. Adicionar Configurações de Commitlint

O commitlint é uma ferramenta de validação de mensagens de commit baseada em regras. É comumente usado para garantir que as mensagens de commit sigam um formato específico. Você pode instalar o commitlint e as configurações do Conventional Commits usando:

npm install --save-dev @commitlint/{config-conventional,cli}

Em seguida, crie um arquivo commitlint.config.js na raiz do seu projeto e adicione o seguinte conteúdo:

module.exports = {extends: ['@commitlint/config-conventional']};

5. Usando Commitizen para commits

Agora que tudo está configurado, ao executar git commit, você será levado a uma interface interativa fornecida pelo Commitizen para criar mensagens de commit.

Conclusão

Padronizar commits é uma prática recomendada que promove clareza, rastreabilidade e colaboração em projetos de desenv


This content originally appeared on DEV Community and was authored by Edson Costa


Print Share Comment Cite Upload Translate Updates
APA

Edson Costa | Sciencx (2024-10-01T00:03:02+00:00) Padronizando Commits com Commitizen e Husky. Retrieved from https://www.scien.cx/2024/10/01/padronizando-commits-com-commitizen-e-husky/

MLA
" » Padronizando Commits com Commitizen e Husky." Edson Costa | Sciencx - Tuesday October 1, 2024, https://www.scien.cx/2024/10/01/padronizando-commits-com-commitizen-e-husky/
HARVARD
Edson Costa | Sciencx Tuesday October 1, 2024 » Padronizando Commits com Commitizen e Husky., viewed ,<https://www.scien.cx/2024/10/01/padronizando-commits-com-commitizen-e-husky/>
VANCOUVER
Edson Costa | Sciencx - » Padronizando Commits com Commitizen e Husky. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2024/10/01/padronizando-commits-com-commitizen-e-husky/
CHICAGO
" » Padronizando Commits com Commitizen e Husky." Edson Costa | Sciencx - Accessed . https://www.scien.cx/2024/10/01/padronizando-commits-com-commitizen-e-husky/
IEEE
" » Padronizando Commits com Commitizen e Husky." Edson Costa | Sciencx [Online]. Available: https://www.scien.cx/2024/10/01/padronizando-commits-com-commitizen-e-husky/. [Accessed: ]
rf:citation
» Padronizando Commits com Commitizen e Husky | Edson Costa | Sciencx | https://www.scien.cx/2024/10/01/padronizando-commits-com-commitizen-e-husky/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.