commits-06-min

5 DICAS PARA MELHORAR SEUS COMMITS

Escrito por Daniel Maria
 em 22 de junho de 2021

Olá você que está lendo este artigo, tudo bem com você? Me chamo Daniel Maria, sou desenvolvedor de software há 5 anos e atualmente trabalho fortemente desenvolvendo soluções distribuídas na DBC. Durante a minha trajetória, já utilizei algumas ferramentas de controle de versão e por muito tempo não me preocupei tanto com a forma como usava.  Neste artigo, reuni algumas dicas que espero que sejam úteis para um melhor aproveitamento e organização destas ferramentas.

Mas primeiro de tudo: o que são commits?

De forma geral um commit, dentro das ferramentas de controle de versão, é um conjunto de alterações de código incluídas no repositório de códigos. Estes repositórios de códigos são locais onde os códigos ficam armazenados e separados por projetos. Desta forma, vários desenvolvedores podem de forma simultânea trabalhar em um mesmo projeto.

Uma vez que um Dev terminar alguma tarefa ele realiza um commit, enviando suas alterações para este repositório que poderá ser vista por qualquer outro desenvolvedor deste mesmo projeto. Certo?

Qualquer ferramenta de controle de versão é muito poderosa, mas como qualquer ferramenta, ela precisa da ajuda dos seus usuários para funcionar adequadamente. Quando estamos trabalhando sozinhos, ou em algum projeto pessoal, em geral não temos muito cuidado com o que vamos escrever ao subir nosso código para o repositório, afinal, somos apenas nós que estamos trabalhando ali.

Porém, ao trabalharmos em um time é essencial que tenhamos um maior cuidado com o que estamos colocando no repositório. Esse cuidado diz muito mais de você, como profissional, do que você imagina.

Dessa forma, reuni algumas dicas rápidas que podem ajudar você a melhorar os seus commits.

1.      Diga o que este “pacote de código” faz.

Parece óbvio, mas ao escrever seu commit tenha isso em mente: você precisa dizer o que aquilo faz. Para isso prefira usar o verbo no imperativo

5d77e52 Corrige bug do cálculo de juros CERTO

69e55e8 Corrigindo bug do cálculo de juros ERRADO

e86a89e Fix bug  MUITO ERRADO 

2.      Seja sucinto

Tanto no que você está escrevendo no título do commit, quanto no body e no que você está “commitando”, procure ser o mais objetivo possível. Recomenda-se que se use até 50 caracteres para o título e 75 para o body. Para isso é fundamental que você consiga dividir esses commits em pequenos grupos, ou se não você terá de ser genérico demais na descrição do commit.

3.      Descreva para todos, não só para você

Nada menos intuitivo que um comentário como “bug fix”, afinal que bug é esse e o que foi arrumado? Talvez o autor do commit até saiba, mas e os demais do time? Essa dica vale também para a criação de branches.

4.      Padrão é preciso

Nada mais desorganizado do que ler um texto todo desformatado, com alterações o tempo todo de fonte, tamanho, etc. Commits não possuem esse tipo de problema, porém é muito ruim ler quando começa com letra maiúscula, ora minúscula, alguns em português, outros em inglês. Algumas vezes começam com o código do bug, em outros não, etc. Por isso é fundamental que a equipe entre em um consenso, afinal o padrão que só você faz não é um padrão.

5.      Use versionamento e commits semânticos

Claro que essa dica não é para todo mundo, afinal nem toda empresa permite esse tipo de versionamento. Mas de qualquer forma, o versionamento semântico basicamente é o uso de tags para cada release. A primeira versão do projeto inicia com a versão 1.0.0 e as versões são incrementadas dependendo do que a próxima versão contém em seu pacote.

Cada número da versão representa algo, sendo:  MAJOR.MINOR.PATCH

Seu incremento depende de:

versão Maior(MAJOR): quando fizer mudanças incompatíveis na API,

versão Menor(MINOR): quando adicionar funcionalidades mantendo compatibilidade, e

versão de Correção(PATCH): quando corrigir falhas mantendo compatibilidade.

Para ambientes onde exista gitflow, ou estratégia parecidas utiliza-se o sufixo “-rc.X” (rc significa release candidate), onde X seria um contador para liberar versões de teste. Uma vez que a versão está estável e deve ser incluída em produção cria-se uma tag sem este sufixo.

Já o commit semântico consiste em incluir um prefixo em cada commit para avisar o que ele contém. Os prefixos devem ser acordados entre o time, mas em geral utiliza-se pelo menos “fix”, “feat”, “refact”, “test”, “doc”. Desta forma, teríamos por exemplo commits assim:

dd37f32 fix: Corrige o bug do saldo negativo

pe44lpe doc: Incrementa o swagger do get na UsuarioController

u77y89a refact: Melhora o script de geração de novas senhas

O uso deste prefixo ajuda o programador a encontrar onde determinado bug foi corrigido ou entender como o sistema estava em determinado tempo, uma vez que tenhamos vários commits com o prefixo bug, por exemplo, provavelmente indica que o sistema estava com um problema grande naquele período de tempo.

Espero que estas dicas tenham sido de grande valor para você e que seus commits sejam ainda melhores a partir de hoje.

Referências:

https://heymaker.com.br/padronizando-commits/

https://semver.org/lang/pt-BR

https://sparkbox.com/foundry/semantic_commit_messages

Quer fazer parte do nosso time? #VemPraDBC

Confira nossas vagas em: https://dbc.compleo.com.br/

por Daniel Maria Desenvolvedor de Software
Menu - DBC Company

Compartilhe

Compartilhar no facebook
Compartilhar no whatsapp
Compartilhar no twitter

Deixe um comentário!

E participe da conversa.

Veja Também

Industry
DBC was practically born in the footwear and iron and steel industries. We have the best solutions for every stage of the...
Financial
We offer solutions to decentralize financial information, expand the final customer`s options when transferring and accessing their information, effective spend control, integration...