Commits Semânticos - Seu github, seu código (e sua vida) muito melhores com ele
Commits semânticos são mensagens que descrevem de forma clara e concisa as mudanças feitas em um projeto de software. Em vez de usar descrições vagas, como "atualização", um commit semântico detalha o que foi alterado e por quê. Isso ajuda a entender o histórico do projeto e facilita a colaboração entre desenvolvedores, pois cada mudança é documentada de maneira significativa.
Já trabalhei em organizações 'GRANDES' que commits eram feitos só por serem obrigatórios para subir o código.
Pra facilitar o uso, eu utilizo uma extensão de linha de comando para me forçar sempre a fazer um commit decente dentro dos padrões. Existem diversas ferramentas e extensões que ajudam na escrita padronizada de commits, mas eu particularmente gosto da interface de linha de comando para isso. Atualmente eu utilizo o commitzen.
Dá pra fazer à moda antiga, simplesmente digitando commit -m ou dentro da janeja da sua IDE. O importante é criar o hábito de escrever no padrão.
#ao invés disso
git commit -m "atualização do filtro"
#use isso
git commit -m
"""
feat(tarefas): Adiciona funcionalidade de filtro para a lista de tarefas
Essa nova funcionalidade permite que os usuários filtrem a lista de tarefas por status (pendente, em andamento, concluída) e por data de entrega.
O filtro é aplicado dinamicamente na listagem, melhorando a usabilidade e a produtividade dos usuários.
Fixes #42
"""
Mas a idéia não era melhorar minha vida? Parece que escrevi um livro...
Você trabalha com pessoas. Não só com desenvolvedores. O dono da empresa não vai abrir o seu código pra ver o que foi alterado. Mas escrevendo assim:
- todas as pessoas conseguirão entender
- o time da TI conseguirá entender
- as máquinas conseguirão entender e gerar a documentação da versão e as FAQs para o suporte.
Use commits semânticos. Seu eu do futuro vai agradecer (especialmente se quiser fazer a controle de qualidade e gerar toda a documentação da versão sem dores de cabeça).
Para saber mais
- Conventional Commits. Uma especificação para dar um significado legível às mensagens de commit para humanos e máquinas (Documentação oficial)
- Padrões de Commits (Repositório em português com um compilado resumido sobre o assunto com exemplos práticos)