Aller au contenu
Développement medium
🔐 Alerte sécurité — Incident supply chain Trivy : lire mon analyse de l'attaque

Debug et recherche dans Git : bisect, blame, grep

3 min de lecture

Quand un bug apparaît et que vous ne savez pas depuis quand il est là, Git dispose d’outils qui localisent le problème en quelques minutes. git bisect fait une recherche dichotomique dans l’historique : vous lui donnez un commit “bon” et un commit “mauvais”, il trouve le commit coupable en $O(\log n)$ opérations.

Ces deux guides couvrent l’investigation d’un dépôt sous deux angles : celui du débogage de régression (bisect, blame) et celui de la recherche de code (grep, log -S, log -L).

BesoinOutilGuide
Trouver le commit qui a introduit un buggit bisectDebug : bisect et blame
Savoir qui a écrit une ligne de codegit blameDebug : bisect et blame
Automatiser la détection du commit fautifgit bisect run <script>Debug : bisect et blame
Chercher une chaîne dans les fichiers actuelsgit grepRechercher dans Git
Trouver quand une chaîne est apparue / a disparugit log -S (pickaxe)Rechercher dans Git
Suivre l’historique d’une fonctiongit log -L :func:fileRechercher dans Git
  • git bisect startgit bisect badgit bisect good <sha> : Git checkout automatiquement les commits à tester
  • git bisect run ./test.sh automatise le processus — le script doit retourner 0 (bon) ou non-zéro (mauvais)
  • git blame -L 10,20 fichier.py affiche l’auteur et le commit de chaque ligne sur la plage 10-20
  • git blame -C détecte les lignes copiées depuis d’autres fichiers — évite les faux positifs
  • git log -S "motclé" (pickaxe) trouve les commits qui ont ajouté ou supprimé cette chaîne — pas les commits qui l’ont juste déplacée

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn