Git Academy

Avancé · 5 min de lecture

git bisect : trouver le commit coupable

Un bug apparu « à un moment » sur 300 commits ? Bisect le trouve en environ 8 tests.

Démarrer

Indique à Git un commit mauvais (en général maintenant) et un bon commit (une version qui marchait).

Sans risque
$ git bisect start
$ git bisect bad
$ git bisect good v1.3.0

Tester, répondre, recommencer

Git se place sur un commit au milieu. Teste-le et réponds good ou bad ; Git divise l'intervalle par deux à chaque fois jusqu'à nommer le premier mauvais commit.

Sans risque
$ git bisect good
$ git bisect bad

L'automatiser

Donne-lui un script qui sort avec 0 si c'est bon et 1 si c'est mauvais : Git fait toute la recherche seul.

Sans risque
$ git bisect run npm test

Terminer

Revenir là où tu étais.

Sans risque
$ git bisect reset