Como ver as mudanças de um commit em git

Neste artigo você vai aprender a como ver as mudanças de um commit em git, com apenas um comando simples!

Pra ver o que um commit mudou, use git show <hash>

Ele mostra o diff daquele commit em relação ao commit anterior (o pai)

Pra descobrir a hash, rode git log (ou git log –oneline pra versão compacta, com a hash abreviada)

E se você quiser comparar dois commits quaisquer, o comando é git diff <commitA> <commitB>

ver as mudanças de um commit capa

Fala programador(a), beleza? Bora aprender mais sobre commit, logs e git!

Para verificar as mudanças de um commit vamos precisar saber a hash dele, que é uma espécie de id, única para todos os commits

Basta você utilizar o comando:

git log

Que uma série de commits e hashes vão ser exibidas

Depois, com a hash em mãos, vamos utilizar o comando:

git show <hash>

Com git show é possível ver a alteração que o commit causou

Formação Claude Code
Formação Recomendada

Formação Claude Code

Domine Claude Code do absoluto zero até o avançado

  • 120 aulas
  • 4 projetos
  • 9h 45min

Quer aprender mais sobre git? Veja este curso gratuito:

Se você deseja verificar a diferença entre os dois últimos commits basta digitar:

git diff <hash>~ <hash>

Note a presença do ~, ele é essencial

Estas são as maneiras mais simples para você obter a diferença que os commits adicionaram ao branch!

Conclusão

Neste artigo você aprendeu a como ver as mudanças de um commit em git

Utilizamos o comando git log para obter a hash do commit que queremos analisar, isso é essencial

Depois basta utilizar o comando git show ou git diff, dependendo do que queremos e analisar as mudanças que foram adicionadas pelo commit específico

Note que você precisa colocar o ~ no diff, pois ele que deixa você analisar o último commit sem precisar saber a hash

Confira nossos cursos gratuitos no Youtube, com vídeos todos os dias!

Se inscreva e ative o sininho para receber as notificações e aprender mais ainda sobre desenvolvimento web!

Veja também nosso catálogo de cursos na Udemy, todos com exercícios e projetos práticos, nas mais diversas tecnologias

O link acima contém um cupom de desconto para os cursos!

Um mini-bloco mostrando a versão compacta do log, tipo:

Se a lista tá gigante e você só quer bater o olho na hash, usa a versão enxuta:

git log –oneline

Cada commit vira uma linha só, com a hash abreviada e a mensagem do lado

Bem mais fácil de achar o commit que você quer analisar 🙂

Deixar explícito que o git show é o caminho padrão:

Se a sua pergunta é só "o que ESTE commit mudou?", o git show <hash> já resolve sozinho

Ele mostra o diff daquele commit comparado com o commit anterior (o pai), sem você precisar apontar nenhum outro commit na mão

E se eu quiser só o resumo dos arquivos?

Às vezes você não quer ler o diff linha por linha, só saber QUAIS arquivos mudaram e quanto

Pra isso tem a opção –stat

git show <hash> –stat

Ou no diff entre dois pontos:

git diff <commit> <commit> –stat

Aí ele te devolve a lista de arquivos alterados com quantas linhas entraram e saíram de cada um

Bem útil pra commit grande, quando o diff completo é PC da Nasa de tanto texto haha

Um parágrafo explicando o que o ~ significa de verdade:

Aquele ~ depois da referência aponta pro commit-pai

Então <hash>~ é uma forma de dizer "o commit anterior a esse"

O ^ funciona parecido pra referenciar o pai também

É isso que deixa você comparar um commit com o que veio antes dele sem decorar as duas hashes

Na prática do dia a dia, o git show <hash> é o que eu puxo primeiro quando quero entender o que entrou num commit

É direto: uma hash, um comando, e você vê o que mudou

O git diff eu deixo pra quando preciso comparar dois pontos mais distantes do histórico, não só um commit contra o anterior

E um detalhe que vale o aviso: achar a hash no meio de um git log gigante é o que trava a galera no começo, por isso o –oneline vira daily driver rapidinho

Perguntas frequentes

Qual comando mostra o que um commit alterou?

git show <hash>

Ele exibe o diff que aquele commit introduziu em relação ao seu pai, ou seja, exatamente o que mudou naquele commit

Como pego a hash de um commit?

Rodando git log, que lista o histórico de commits com suas hashes

Se a lista tá grande, git log –oneline mostra cada commit em uma linha só, com a hash abreviada

Qual a diferença entre git show e git diff?

git show <hash> mostra o que UM commit mudou em relação ao commit anterior

git diff <commitA> <commitB> compara dois commits quaisquer que você indicar

Pra "o que este commit fez", o git show já resolve sozinho

Como ver só o resumo dos arquivos alterados, sem o diff inteiro?

Adiciona –stat no comando

git show <hash> –stat ou git diff <commit> <commit> –stat

Aí você recebe a lista de arquivos alterados com as linhas adicionadas e removidas de cada um

O que significa o ~ depois da hash?

O ~ referencia o commit-pai

Então <hash>~ aponta pro commit anterior àquele

O ^ também referencia o pai

É isso que permite comparar um commit com o que veio antes sem precisar das duas hashes

Leia também

Escrito por | Matheus Battisti

Matheus Battisti
Fundador da Hora de Codar

Programador apaixonado pelo mundo das tecnologias, sempre buscando em aprender e se aprofundar em linguagens, frameworks e o que mais for necessário para executar um bom trabalho. Agora tem uma nova missão que é de passar seu conhecimento adiante para formar novos programadores e especializar mais os que já são.

Subscribe
Notify of
guest

0 Comentários
Oldest
Newest Most Voted

Formações

Formação Vibe Coding

Formação Vibe Coding

Do Prompt ao Produto: Crie Software Real com IA

  • 474 aulas
  • 20 projetos
  • 39h 27min

Blog | Mais populares