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

Automatizando commit do git com IA

✨ Automatizando Mensagens de Commit com Go + ChatGPT

No desenvolvimento diário, escrever mensagens de commit claras e significativas é essencial — mas também é uma tarefa repetitiva e, muitas vezes, negligenciada. Pensando nisso, desenvolvi um utilitário de linha de comando chamado gcommit, que automatiza essa etapa usando Go e a API da OpenAI (ChatGPT).

⚙️ O que é o gcommit?

gcommit é um binário simples que substitui o uso direto do git commit. Ao invés de escrever manualmente uma mensagem, ele:

Executa git add . para preparar os arquivos.

Coleta as mudanças staged (git diff --cached).

Gera uma mensagem de commit resumida e contextualizada usando o ChatGPT.

Realiza o git commit -m "mensagem gerada".

(Opcional) Executa git push origin com a flag -a.

💡 Por que usar?

🧠 Mensagens mais inteligentes: usa IA para gerar descrições claras das alterações.

⏱️ Economia de tempo: elimina a tarefa de escrever mensagens manualmente.

🧼 Padrão nos commits: evita mensagens vagas como fix, ajuste, teste.

💻 Integração simples: binário leve, sem dependências além do Go e do Git.

🔐 Seguro para produção: usa .env ou variável de ambiente para a chave da OpenAI.

✅ Exemplo de uso
gcommit

📦 Commit message gerada:
Refatora autenticação e corrige validação de token

✅ Commit realizado com sucesso!

Com push automático:
gcommit -a

🔒 Considerações

A chave da OpenAI pode ser lida de um arquivo .env (api_key) ou da variável de ambiente.
O projeto é otimizado para uso econômico da API (dif curto, token limitado).
Ideal para projetos pessoais, scripts internos e equipes que desejam padronizar commits.

📦 Conclusão

O gcommit é uma pequena automação que trouxe grande melhoria no meu fluxo de desenvolvimento. Com ele, mantenho um histórico de mudanças mais legível, preciso e consistente — e tudo isso sem perder tempo pensando na descrição ideal para cada commit.

Projeto no github para quem desejar coloborar ou testar:

Carregando publicação patrocinada...