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.