Git bisect encontra o commit que introduziu um problema
Use busca binária entre uma versão boa e outra ruim para reduzir drasticamente o número de testes durante uma investigação.
Busca binária no histórico
git bisect escolhe commits intermediários entre um ponto conhecido como bom e outro conhecido como ruim. A cada teste, você classifica o estado e reduz pela metade o trecho restante.
Em históricos longos, isso é muito mais eficiente que verificar commits um a um.
Defina um teste confiável
Antes de começar, descreva objetivamente o que significa bom ou ruim. Um teste automatizado com código de saída consistente torna a investigação reproduzível.
Se o comportamento depender de serviço externo ou dados instáveis, resultados incorretos podem apontar para o commit errado.
Automatize quando possível
git bisect run executa um script em cada ponto selecionado. O script deve preparar apenas o necessário, testar e retornar sucesso, falha ou indicação de que aquele commit não pode ser avaliado.
Commits antigos podem exigir dependências ou configuração compatíveis com sua época.
Confirme a causa
O primeiro commit ruim é uma pista forte, não uma explicação completa. Leia a alteração, reproduza o problema no commit anterior e valide a correção atual.
Ao terminar, execute git bisect reset para retornar ao estado original de trabalho.
Quer aplicar isso à sua empresa?
Explique o cenário e eu ajudo a transformar a necessidade em um projeto viável.
Conversar com Tadeu