Git Log permet d’afficher et de filtrer l’ensemble des commits d’un projet. En spé­ci­fiant la commande, vous obtenez des résultats encore plus précis.

Nom de domaine
Votre domaine en un clic
  • 1 cer­ti­fi­cat SSL Wildcard par contrat
  • Fonction incluse Domain Connect pour une con­fi­gu­ra­tion DNS sim­pli­fiée

Git Log, c’est quoi ?

La commande Git Commit se retrouve en tête de chaque tutoriel Git car elle crée des ins­tan­ta­nés de l’état actuel et en­re­gistre les mo­di­fi­ca­tions. De nombreux commits sont ainsi créés pour des projets de grande envergure, sur lesquels tra­vail­lent des équipes avec de nombreux dé­ve­lop­peurs. Par con­sé­quent, cet his­to­rique peut ra­pi­de­ment devenir confus. La commande Git Git Log est donc un outil important pour le travail avec le logiciel de contrôle de versions. Il permet en effet de lister les commits, de les filtrer et de re­cher­cher des mo­di­fi­ca­tions précises. Quand Git Status examine le ré­per­toire de travail, Git Log se concentre uni­que­ment sur les commits.

Syntaxe de Git Log

La syntaxe de base de Git Log est très simple. Sans autre paramètre, la commande donne la liste de tous les commits du projet dans l’ordre an­ti­chro­no­lo­gique. Il suffit ensuite de faire défiler les snapshots pré­cé­dents étape par étape, à partir du commit le plus récent. La date, le nom et l’adresse email de l’uti­li­sa­teur sont aussi indiqués.

git log

Si cette fonction est idéale pour garder une vue d’ensemble, affiner les critères de recherche dans le cas des projets de grande taille peut vite se révéler pratique, notamment pour avoir de meilleurs résultats. Git offre pour cela plusieurs pos­si­bi­li­tés et nous avons réuni les plus im­por­tantes dans le tableau suivant, à utiliser en plus de l’in­con­tour­nable Git Cheat Sheet avec PDF à té­lé­char­ger.

Prin­ci­pales ap­pli­ca­tions de Git Log

git log La commande par défaut liste tous les commits dans l’ordre inverse
git log -p Affiche le contexte des mo­di­fi­ca­tions
git log --stat Affiche les sta­tis­tiques de mo­di­fi­ca­tions avec une liste claire
git log --graph --decorate --oneline Liste les mo­di­fi­ca­tions sous forme graphique
git log -n <nombre> Limite le nombre de commits affichés
git log –oneline Regroupe chaque commit sur une ligne pour un meilleur aperçu
git log --author="nom de l’auteur" Affiche uni­que­ment les commits d’un auteur donné
git log --grep="message" Filtre les commits en fonction de leur ex­pli­ca­tion
git log <since>..<until> Affiche uni­que­ment les commits sur une période donnée
git log <fichier> Affiche uni­que­ment les commits qui con­tien­nent un fichier spé­ci­fique
git log –pretty Modifie le format de la sortie selon ses propres spé­ci­fi­ca­tions

Combiner les filtres

Il est aussi possible de combiner dif­fé­rents arguments pour une recherche encore plus précise. Voici un exemple de code simple qui permet d’afficher une liste très spé­ci­fique avec Git Log. Avec cette commande, il est possible d’afficher en détail uni­que­ment les commits de l’uti­li­sa­teur Hugo Martin dans le fichier exemple.

git log --author="Hugo Martin" -p exemple.py

Prenons un exemple plus complet et supposons que l’on recherche uni­que­ment les commits du même auteur et d’une collègue pour les deux mois de septembre et octobre 2021. Les commits doivent uni­que­ment comporter des mo­di­fi­ca­tions dans le ré­per­toire texte sans être des fusions. Le code cor­res­pon­dant se pré­sen­te­rait alors ainsi :

git log --author="Hugo Martin\|Lea Durand" --since="2021-09-01" \ --before="2021-10-31" --no-merges --t exemple.py

Formater Git Log avec pretty

Les formats pretty pa­ra­mètrent l’affichage dans Git Log. Voici les formats les plus courants :

  • oneline : affiche toutes les in­for­ma­tions sur une seule ligne ;
  • short : liste uni­que­ment les commits par auteur et par titre ;
  • medium : liste les commits par auteur, date, titre et ex­pli­ca­tion ;
  • full : ajoute le committer ;
  • fuller : liste aussi la date de l’auteur et du committer ;
  • email : affiche les in­for­ma­tions au format e-mail ;
  • raw : liste les commits tels qu’ils ont été déposés ;
  • format : permet de formater pré­ci­sé­ment la sortie selon vos souhaits. Vous pouvez ainsi présenter les in­for­ma­tions im­por­tantes sous forme de phrases, insérer des pa­ra­graphes ou définir un ordre précis des in­for­ma­tions.

Git Log et Git Diff

Dans l’absolu, Git Log est un outil puissant pour garder une vue d’ensemble des projets et pour filtrer certaines in­for­ma­tions. La commande est souvent utilisée avec Git Diff afin de lister ainsi les mo­di­fi­ca­tions entre deux commits. Cela permet non seulement de voir l’évolution de votre projet au fil du temps et les membres de l’équipe qui ont pris en charge certaines tâches, mais c’est aussi très utile pour iden­ti­fier ra­pi­de­ment les sources d’erreur.

Conseil

Op­ti­mi­sa­tion des flux de travail, ins­tal­la­tion rapide et un système vraiment évolutif : avec Deploy Now de IONOS, déployez vos sites Internet et ap­pli­ca­tions di­rec­te­ment avec GitHub. Profitez d’un mois d’essai gratuit puis d’une offre spéciale !

Aller au menu principal