Git Bisect, une commande à connaitre
Un bug est passé sous les radars, et vous ne savez pas depuis combien de temps il est là...
git bisectest le héro dont vous avez besoin !
Cette commande méconnue de git est vraiment géniale ! Perso ça m'est arrivé 2-3 fois seulement, mais sans elle j'aurais pris bien plus de temps à résoudre mes bugs.
Explication
- Vous découvrez un bug et ne savais pas depuis combien de temps il est là ;
- Vous commencez par revenir sur un ancien commit pour lequel vous êtes sûr que le bug n'était pas là ;
- Vous lancez
git bisectqui va faire... Une bissection ! Oui voilà, bravo les mathématiciens 😁 Il va se placer sur le commit entre l'actuel et le dernier et te demander si le bug est là ? - Si oui, il va faire une bissection entre le commit du milieu et le dernier, si non, une bissection entre celui du milieu et le premier. Du coup, vous serez soit au 1/4 soit au 3/4.
- Dans tous les cas, cela divise par deux le nombre de commits potentiels à chaque itération, et il ne te faut souvent pas plus de 5 bissections pour identifier le commit responsable du bug !
Après, il vous restera à faire les modifs, mais git bisect aura fait son travail rapidement.