Como encontrar um commit ruim usando git

Poucos desenvolvedores sabem que o git tem uma ótima ferramenta para encontrar commit ‘ruim’. Seu nome – bisect.

Para começar a usar bisect, temos que executar três comandos:

  1. git bisect – para iniciar o processo
  2. git bisect good <hash of good commit> – para marcar algum commit como bom (commit onde não há erro)
  3. git bisect bad – marcar o commit atual como ruim

O Git irá ‘pular’ para o meio do commit entre o bom e o ruim. Temos que verificar, se o erro aparecer, dizemos “git bisect bad” para marcar o commit atual como ruim. E se não houver erros, marcamos commit como bom – “git bisect good”. Devemos fazer isso até que git diga em que erros de commit aparecem pela primeira vez.

Podemos automatizar esse processo se tivermos teste. Git executa o comando e verifica o código retornado para marcar o commit como bom ou ruim. É muito útil.

Lá você pode encontrar o repositório com fonte de amostra e teste para encontrar o primeiro commit incorreto por git bisect.

Para usar a fonte do repositório de amostra, você deve:

dá uma olhada

git clone https://github.com/Quard/test-git-bisect
cd test
-git-bisect

começar a dividir e definir commits bons e ruins (o último commit é ruim)

git bisect start
git bisect bad

git bisect good d8e32db15267e857dda146d6a131a1289e91da74

execute o bisect no modo de automação (há uma versão adulta, para usá-lo – basta alterar “test.py” para “friday_18 + / test.py”)

git bisect run python test.py

No final, o Git imprimirá commit, onde o erro aparece pela primeira vez.

Fonte disponível no GitHub

para a versão adulta você deve instalar o OpenCV