Par Anonyme (non vérifié) , 29 avril 2026

Au-delà du défaut

git log est un petit langage de requête pour votre histoire. Avec les bons flags il produit des rapports de qualité dashboard, des pistes d'audit et des forensics de bugs.

Formats pretty

git log --pretty=oneline
git log --pretty=fuller
git log --pretty=format:'%h %ad %an %s' --date=short
git log --pretty=format:'%C(yellow)%h%Creset %C(cyan)%ad%Creset %s %C(green)(%an)%Creset' --date=short
git config --global alias.lg "log --pretty=format:'%C(auto)%h %ad %s %d' --date=short --graph"

Vue graphe

git log --graph --oneline --all --decorate
git log --graph --first-parent main

Filtrer par contenu

git log -S"FunctionName"
git log -G"regex.*pattern"
git log -L :myFunc:src/file.c
git log -L 100,150:src/file.c

Filtrer par métadonnées

git log --since=2.weeks --until=yesterday
git log --author='Alice'
git log --grep='hotfix' --grep='security' --all-match
git log --no-merges
git log --merges --first-parent main
git log --committer='@example.com'

Log restreint par chemin

git log -- src/parser/
git log --diff-filter=D -- secrets.env
git log --follow -- src/old/path.go

Comptage et stats

git shortlog -sne
git log --stat
git log --shortstat
git log --numstat

Parcours

git log --ancestry-path A..B
git log --boundary --left-right A...B
git log --reverse
git log --topo-order
git log --date-order

Erreurs courantes

Utiliser --all quand vous voulez --branches. Oublier --follow sur les fichiers renommés.

Range-diff pour séries

git range-diff main..topic-v1 main..topic-v2