Executando verificação de segurança...
11

Escrever commits melhores

Fala pessoal, uma coisa que eu sempre achei importantes nos projetos, relacionado com o versionamento de código, é a padronização das mensagens que nós utilizamos em nossos commits. Há alguns anos eu comecei a seguir o padrão de commits proposto pela Conventional Commits, acredito que muitos aqui conhecem, ou pelo menos já viram por aí em alguns projetos.

Porém, para algumas pessoas, ficar digitando feat: ..., fix: ... pode ser um pouco chato, por ser repetitivo ou até mesmo acabam esquecendo, e então os commits ficam uma bagunça, uns com esse prefixo, outros não kkkkk.

Pensando nisso, eu desenvolvi uma CLI para ajudar nesse processo, a ferramenta se chama Git Better Commit (gbc), e serve de auxílio aos commits, basta digitar gbc após fazer o git add <arquivos> e então selecionar a opção, e logo após digitar a mensagem desejada. Nela também é posível escrever commits com emojis, inclusive alterar para os emojis de sua preferência.

Sem emojis:

Com emojis:

No mais, espero que gostem da ferramenta, e de qualquer forma, recomendo para todos utilizarem o padrão da Conventional Commits em seus projetos :)

Mais informações no repositório: https://github.com/AllanCapistrano/gbc

Por enquanto só está disponível para distribuições Linux e Termux.

Carregando publicação patrocinada...
1

Massa demais! Não consegui usar por quê não consigo usar no termux, não tenho acesso root pra acesar a usr/bin, mas caso conheça uma forma, por favor, me diga kkkkkk eu preciso desse CLI. Valeu! 💜

1

Opa muito obirgado pelo feedback, como nunca utilizei o termux não tinha levado em consideração isso da usr/bin. Vou ficar de olho nisso, para em futuras atualizações ver uma maniera de corrigir isso.

Se tudo der certo dou um salve por aqui :)

Porém uma solução temporária, seria você baixar o gbc manualmente através da página de release, e colocá-lo em um diretório similar ao usr/bin no termux que você tenha acesso (inclusive se você souber, me avisa por favor :D). E para utilizar o arquivo de configurações (não é obrigatório) criar, também manualmente, o diretório ~/.config/gbc e colocar nele o arquivo gbc.conf.

1

Fala Wesley, acabei de disponibilizar o gbc para também poder ser utilizado no Termux basta você seguir as instruções que estão no README, ou para facilitar, rodar o comando abaixo

bash -c "$(curl --fail --show-error --silent --location https://raw.githubusercontent.com/AllanCapistrano/gbc/main/scripts/install-termux.sh)"

Somente corrigindo o meu comentário anterior, os passos que eu tinha colocado antes não iriam funcionar, pois o binário do gbc foram gerados para outra arquitetura. Porém agora, nessa nova versão, estou realizando o build do gbc tanto para x86_64 quanto para aarch64. Por conta disso que eu tive que criar um novo script exclusivo para funcionar no Termux (além da questão do /usr/bin).

Pelo que testei, está funcionando corretamente, inclusive as modificações que são feitas no arquivo de configurações. Mas qualquer erro ou bug, você pode criar uma issue lá no repositório do projeto.

A única coisa que está com problemas é o comando gbc update, um novo comando que eu criei para poder atualizar de maneira automática o gbc para a versão mais recente. Ainda estou estudando o motivo do erro.

1
1
1

Por muito tempo escrevi commit como se fosse um bebe que só conhece 10 palavras, até descobrir a padronização da angular. Projeto muito foda, parabens!

1
1

Cara, que massa. Outro dia eu tava procurando algo exatamente assim e não achei. Comecei a usar o padrão de Commits há alguns meses e essa ferramente vai me ajudar bastante haahah. Valeu
não entendi muito bem como usar como emoji, parece ser o mesmo gif ai hahah

1

Muito obrigado. A questão do emoji é bem sutil, a mudança é somente na mensagem do commit.

Por exemplo sem emoji:

Com emoji a mensagem fica assim:

Mas no menu sempre vai ter o emoji mesmo kkkkkkkkk

1

Muito massa!

Eu conhecia o commitzen que inclusive é utilizado no tabnews. Realmente escrever commits utilizando o padrão é muito importante para manter um histórico limpo e organizado.

Parabéns pelo projeto!

1
1

Estou buscando implementar algo assim para a empresa que eu trabalho.
Atualmente não temos padronização nos commits e é algo que faz falta...

Mas todos aqui utilizam Windows. Conseguiriamos usar via WSL será?

1

Opa Victor, com WSL funciona sim, eu testei com o Ubuntu 20.04 e deu tudo certo. Mas se der qualquer erro pode abrir uma issue lá no projeto.

Eu tenho interesse em futuramente disponibilizar também para Windows, para funcionar em conjunto com o Git for Windows. Mas ainda preciso estudar mais a respeito, e ver como fica a questão do arquivo de configuração :)

Caso não funcione, um colega aí nos comentário falou a respeito do commitizen, eu pessoalmente nunca utilizei, mas pode ser que sirva para a sua empresa.

1

Show de bola! Muito obrigado pelo retorno.

Estou nessa nova empresa a pouco mais 2 meses e eles mudaram pro git a pouco tempo...
Na minha antiga empresa usavamos linux e um colega meu desenvolveu um .sh que simplificava os comandos do git (Criação de branch, commit, pull e push), coisas bem banais.

Aqui eu queria trabalhar em algo parecido, mas começando com uma padronização dos commits já seria um grande avanço para introduzir algo do tipo.

Quando tiver um tempinho vou configurar o WSL na máquina e testar.

Parabéns pelo projeto!

1
1
1

Pow, achei interessante o projeto. Meu PC de trabalho é Windows, mas o pessoal é linux. Vou ver se dou uma olhada melhor depois nele. Valeu!

1

Opa muito obrigado :) futuramente eu penso em disponibilizar também para Windows, mas ainda preciso estudar mais a respeito, e ver como fica a questão do arquivo de configuração.

0