Skip navigation

Vous savez surement à quel point chercher un bug dans un gros projet peut être rébarbatif, surtout quand le bug est apparu il y a longtemps, et qu’un nombre considérable de commits se sont passés depuis.

Git offre la possibilité d’optimiser cette recherche via la commande git bisect.

Cette commande permet à git de faire une recherche dichotomique.

C’est parti, simplement « git bisect start« .

Vous devez ensuite indiquer à git un point ou le bug n’était pas présent, puis un point ou le bug était présent.

git co master && git bisect good
git co HEAD~40 && git bisect bad
view raw gistfile1.sh This Gist brought to you by GitHub.

(vous pouvez aussi appeler git bisect good_comit bad_commit)

Un peu comme un plus ou moins, git va alors changer le commit actuel de votre dépôt local (il va prendre le commit au milieu des deux que vous lui avez indiqué), à vous de tester et de lui indiquer si le commit est bon « git bisect good », ou mauvais « git bisect bad »

 

Au bout de quelques étapes, git va débusquer le commit fautif, et il sera aisé de trouver le bug.

Il est possible d’automatiser cette étape avec git bisect run, en lui passant en paramètre un script, qui renverra 0 ou 1 si le commit est bon ou mauvais.

 

Happy gitting!

Partagez :-)
Facebook Twitter Email

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*


× 4 = douze

* Copy this password:

* Type or paste password here:

14,797 Spam Comments Blocked so far by Spam Free Wordpress

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>