0Pricing
Git Advanced: Monorepo, Submodules & Workflows · Aula

Bisect: encontrando commits problemáticos

Use git bisect para fazer uma busca binária no histórico e identificar o commit exato que introduziu um erro, mesmo entre centenas de commits.

Bisect: encontrando commits problemáticos é uma aula grátis de Git Advanced: Monorepo, Submodules & Workflows no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Git Advanced: Monorepo, Submodules & Workflows, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Git Advanced: Monorepo, Submodules & Workflows inclui 4 aulas no total.

Partes desta aula ainda não foram traduzidas e aparecem em inglês.

The Needle in the Haystack

A bug hides somewhere in your last 200 commits. git bisect runs a binary search through history, halving the suspect range with each test.

How Binary Search Helps

Checking 200 commits linearly means 200 tests. Binary search needs only about log2(200) ≈ 8 — bisect narrows the culprit dramatically faster.

Starting a Bisect

Kick off a session with git bisect start. From there Git walks you through marking commits as good or bad.

git bisect start

Marking Good and Bad

Tell Git where the bug exists (bad) and an older commit where it didn't (good). That bounds the search range.

git bisect bad HEAD
git bisect good v1.2.0

Testing Each Checkout

Git checks out the midpoint commit. You test it and report good or bad, and Git picks the next midpoint accordingly.

git bisect good
# or
git bisect bad

Reaching the Culprit

After a few rounds, Git names the first bad commit — its hash, author, and message — the exact change that introduced the bug.

Ending the Session

Always finish with git bisect reset. It returns you to your starting branch and clears the bisect state.

git bisect reset

Automating with a Script

If you can test the bug programmatically, git bisect run ./test.sh automates the whole search — exit 0 means good, non-zero means bad.

git bisect run ./test.sh

The Skip Escape Hatch

Hit a commit you can't test (it won't build)? git bisect skip tells Git to try a nearby commit instead.

git bisect skip

Reviewing the Log

git bisect log saves or replays the decisions you made — useful for documenting how you found a bug or resuming a session later.

git bisect log

Best Practices

For reliable bisects: have a clear, reproducible test, keep commits small and atomic, and automate with git bisect run whenever you can.

Quick Check

Test your bisect knowledge.

Recap

Recap: git bisect start, mark good and bad, test each midpoint to halve the range, automate with run, skip the untestable, and reset when done.

Perguntas Frequentes

A aula “Bisect: encontrando commits problemáticos” é grátis?

Sim — o texto completo de “Bisect: encontrando commits problemáticos” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Git Advanced: Monorepo, Submodules & Workflows, atualize para CoddyKit PRO. O curso de Git Advanced: Monorepo, Submodules & Workflows inclui 4 aulas no total.

O que vou aprender em “Bisect: encontrando commits problemáticos”?

Use git bisect para fazer uma busca binária no histórico e identificar o commit exato que introduziu um erro, mesmo entre centenas de commits. Você pratica Git Advanced: Monorepo, Submodules & Workflows com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Git Advanced: Monorepo, Submodules & Workflows?

Nenhuma experiência prévia é necessária. Git Advanced: Monorepo, Submodules & Workflows no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “Bisect: encontrando commits problemáticos”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Git Advanced: Monorepo, Submodules & Workflows?

Sim. Cada aula de Git Advanced: Monorepo, Submodules & Workflows inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Rebase Interativo e Alteração de Commits
  2. Armazenando e Selecionando Alterações
  3. Reflog para Recuperação
  4. Bisect: encontrando commits problemáticos
← Voltar para Git Advanced: Monorepo, Submodules & Workflows