kb.erickguedes.com
Git Completo: do Básico à Certificação

Navegando pelo Histórico

Aula 5 de 12

git log — O Histórico de Commits

# Log padrão
git log

# Formato compacto (uma linha por commit)
git log --oneline

# Com grafo de branches
git log --oneline --graph

# Com estatísticas
git log --stat

# Com diff de cada commit
git log -p

Filtros no git log

# Últimos N commits
git log -5

# Por data
git log --after="2024-01-01"
git log --before="2024-06-01"
git log --since="2 weeks ago"

# Por autor
git log --author="Erick"

# Por mensagem
git log --grep="fix:"

# Por arquivo
git log -- meu-arquivo.py

# Commits que modificaram uma função específica
git log -S "nomeDaFuncao"

Visualizando Mudanças

# Diff entre commits
git diff abc123..def456

# Comparar dois commits específicos
git diff HEAD~2 HEAD

# O que mudou em um commit específico
git show abc123

Navegando no Tempo

# Referências relativas
HEAD      # commit atual
HEAD~1    # pai do HEAD (também HEAD^)
HEAD~2    # avô (2 commits atrás)
HEAD~5    # 5 commits atrás
# Ver o repositório como era em um commit específico
git checkout abc123

# Voltar para o branch principal
git checkout main

# Criar um branch antigo a partir de um commit específico
git checkout -b branch-antigo abc123

git shortlog

Resumo de commits agrupado por autor (útil para release notes):

git shortlog
git shortlog -sn  # apenas quantidade de commits

git log é seu principal instrumento de investigação. Domine seus filtros para encontrar qualquer coisa no histórico.