image

Access unlimited bootcamps and 650+ courses

50
%OFF
Article image
Jonas Campos
Jonas Campos21/08/2024 08:43
Share

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...

    image

    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:

    1. todas as pessoas conseguirão entender
    2. o time da TI conseguirá entender
    3. 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

    Share
    Comments (3)
    Jonas Campos
    Jonas Campos - 21/08/2024 20:57

    No artigo inseri propositalmente todos os atributos de um commit semântico. Fiz isso porque acredito que não devemos ter preguiça de documentar os sistemas que estamos trabalhando. Em algumas linhas podemos resumir para o time de negócios tudo o que foi alterado, e em qual tarefa ou issue estava o descritivo do que foi solicitado.


    A sintaxe pode também conter somente os parâmetros obrigatórios


    feat: Adiciona funcionalidade de filtro para a lista de tarefas
    


    Ou acrescentando também o parâmetro opcional sobre qual escopo/regra de negócio nossa alteração se aplica.


    feat(tarefas): Adiciona funcionalidade de filtro para a lista de tarefas
    



    Ronaldo Schmidt
    Ronaldo Schmidt - 21/08/2024 19:29

    O artigo é interessante e ilustra bem a importância de nos adaptarmos e seguir padrões é uma boa prática.

    Porém há métodos mais concisos que podem transmitir a mesma ideia de forma eficaz.

    Tudo depende da forma como é implementado e da definição de regras claras para que toda a equipe possa seguir.

    Se quiser discutir mais sobre o assunto, fique à vontade para deixar um comentário.

    Obrigado por compartilhar.

    Let's code!

    VT

    Vicente Tomazi - 21/08/2024 09:17

    Achei muito massa isso! Fica om principalmente para pessoas como eu que estao começando. Tenho uma dificuldade muito grande em lembrar cada comando de cada tarefa em computaçao e esse modo de commits semanticos ajuda muito, nao só para o futuro, mas para o presente. O futuro é hoje.