O que é um commit no Git e quais informações ele realmente armazena?
Publicado em 2026-10-20 por frfrand
Qué hace un commit de Git, por qué tiene identificador, cómo escribir mensajes útiles y qué errores evitar al guardar cambios.

Um commit do Git é um registro de um estado do projeto, acompanhado de informações sobre quem criou esse registro, quando e como ele se relaciona com o histórico anterior. Não equivale a salvar o arquivo com Ctrl+S: é uma unidade de histórico que você pode consultar, comparar e compartilhar.
O exemplo das fotos de uma reforma
Imagine que você está reformando um cômodo. Todos os dias você tira uma foto para lembrar como estava antes de mover os móveis. Se algo der errado, você olha as fotos e entende o que mudou. O Git funciona com uma ideia semelhante, mas guarda referências a objetos de conteúdo e metadatos de forma eficiente, em vez de copiar ingenuamente uma pasta inteira a cada vez.
Um commit tem um identificador, comumente representado por um hash hexadecimal. Esse identificador depende do conteúdo do objeto commit, incluindo sua referência à árvore de arquivos e seus metadados. Por isso, alterar a mensagem ou o histórico pode resultar em outro identificador.
O que ele realmente contém?
Cada commit faz referência a uma árvore que descreve o estado de arquivos e diretórios versionados. Também aponta para um ou mais commits pais, exceto no início do histórico. Inclui dados do autor, data, confirmador e uma mensagem.
O histórico forma uma estrutura conectada: permite seguir o caminho de uma versão até suas antecessoras. Um commit não é necessariamente «as mudanças» no sentido literal, embora o Git possa calcular a diferença entre dois estados.
Como criar um sem misturar tudo
Um percurso habitual é:
git status
git add src/app.py
git diff --cached
git commit -m "Corrige validación de reservas"
Primeiro você verifica o status do repositório, adiciona apenas o que deseja incluir, inspeciona a área de preparação e só então confirma o commit.
A área de preparação, chamada staging area ou índice, é importante: permite salvar uma mudança em dois commits distintos se você resolveu dois problemas independentes.
O que é uma boa mensagem?
«Mudanças» ou «correções» dizem muito pouco quando seis meses depois alguém investiga uma falha. «Corrige reserva dupla ao confirmar turno» explica melhor a intenção.
Um bom commit geralmente agrupa uma mudança coerente. Não precisa ser minúsculo, mas sim compreensível e revisável. Se você modificou o banco de dados, o design dos botões e a autenticação, talvez mereçam commits diferentes.
Um commit já está no GitHub?
Não. git commit registra a mudança no repositório onde você trabalha. Para compartilhá-lo com um remoto, normalmente você usa git push, seguindo a configuração de branches e permissões.
Também vale lembrar que o Git não é um backup suficiente por si só. Um repositório local que nunca foi enviado para outro lugar pode se perder com o disco.
Erros que causam problemas reais
Incluir senhas: se uma chave chegar ao histórico, apagar a linha no commit seguinte não elimina automaticamente a exposição anterior. É preciso revogar e rotacionar os segredos.
Confirmar arquivos gerados sem critério: alguns artefatos devem ser versionados e outros não; decida de acordo com a forma como o projeto é construído.
Modificar commits publicados sem coordenar: reescrever o histórico compartilhado pode desorganizar o trabalho de outras pessoas.
Como se aplica no ArduMaker?
Ao implantar projetos a partir de repositórios Git no ArduMaker, saber qual commit ficou associado a uma versão ajuda a investigar regressões e entender exatamente qual código foi publicado. Não substitui os testes, mas melhora muito a rastreabilidade.
Em resumo: um commit é um ponto identificável do histórico do código. Faça commits pequenos e claros, revise o que eles incluem e evite enviar segredos.
Fontes: Documentação oficial do git-commit · Área de preparação no Pro Git.
