Afficher l'historique des validations pour une branche à l'aide de Git Log With Range
-
Historique de validation Git pour la branche à l’aide de
git log
et des options de limitation avancées -
Historique de validation Git pour la branche utilisant la syntaxe à double point
<branch1>..<branch2>
-
Raccourci utile avec
git log
pour taper quelques caractères de moins pour afficher l’historique de validation Git pour la branche -
Option utile pour voir uniquement les derniers commits avec
log
pour Git Afficher les commits sur la branche actuelle uniquement -
Historique de validation Git pour la branche avec l’opérateur Caret
^
-
Historique de validation Git pour la branche avec l’option
--not
- Ressources
Le git log
a de nombreuses options de limitation pour obtenir un sous-ensemble de commits à partir de l’historique de votre référentiel. Nous montrons comment git log
avec range
en utilisant la syntaxe à deux points, l’opérateur caret ^
, l’option --not
et plusieurs raccourcis nous aident à afficher l’historique git commit
pour la branche uniquement.
Git tire sa puissance de ce système de requête de révision riche qui permet aux utilisateurs de gérer leurs branches et de concevoir avec elles des flux de travail efficaces.
Historique de validation Git pour la branche à l’aide de git log
et des options de limitation avancées
Les référentiels Git peuvent devenir volumineux avec de longs historiques de validation. L’affichage de l’historique complet n’est pas très utile dans de tels cas.
La commande git log
nous fournit de nombreuses options utiles pour extraire uniquement le sous-ensemble de commits de l’historique du référentiel dont nous avons besoin.
git log [formatting options] [limiting options]
Les [formatting options]
nous permettent d’afficher différentes informations sur nos commits, tandis que les [limiting options]
nous aident à sélectionner les commits que nous voulons voir.
Lorsque nous fournissons les bonnes valeurs de plage dans ces options de limitation, nous pouvons git show
commits sur la branche actuelle.
Historique de validation Git pour la branche utilisant la syntaxe à double point <branch1>..<branch2>
La syntaxe à double point montre les commits auxquels nous pouvons accéder depuis branch2
mais pas branch1
.
Supposons que nous créons un nouveau experiment_branch
à partir de master
. Ensuite, nous nous engageons dans ces deux branches mais ne fusionnons pas encore.
Si nous faisons maintenant un git log
nu sur experiment_branch
, il affiche l’historique complet, y compris les commits que nous avons faits pour master
avant même de créer experiment_branch
.
Ce n’est pas un comportement très utile. Un cas d’utilisation courant est lorsque nous voulons voir uniquement les commits non fusionnés sur experiment_branch
.
Nous le faisons avec la commande suivante.
git log master..experiment_branch
Tous les commits sont accessibles depuis experiment_branch
mais pas master
(essentiellement, tous les commits non fusionnés sur la branche experimental).
On pourrait aussi inverser l’ordre des branches pour le cas inverse pour voir l’état du master
dans lequel on va fusionner notre experiment_branch
.
Notre master
ressemble à ceci :
Quand on fait :
git log experiment_branch..master
Nous ne voyons que les nouveaux commits sur master
après avoir créé notre branche expérimentale.
Raccourci utile avec git log
pour taper quelques caractères de moins pour afficher l’historique de validation Git pour la branche
Si nous ne fournissons aucune des deux branches dans la syntaxe à double point, Git les définit par défaut sur HEAD
.
Nous pouvons l’utiliser avec un choix intelligent de git checkout
pour raccourcir notre commande git log
.
Tout d’abord, nous passons à notre branche expérimentale.
git checkout experiment_branch
Maintenant, le HEAD
pointe vers experiment_branch
.
Nous utilisons maintenant la version abrégée de la syntaxe de plage à double point, en omettant l’opérande de branche droite.
git log master..
Git définit par défaut la bonne branche sur le HEAD
actuel, notre experiment_branch
, et nous obtenons le même historique des seuls commits non fusionnés comme ci-dessus.
Option utile pour voir uniquement les derniers commits avec log
pour Git Afficher les commits sur la branche actuelle uniquement
Notre experiment_branch
peut avoir une longue histoire avec de nombreux commits non fusionnés.
Nous voudrons peut-être ne voir que les derniers commits dans un tel cas.
git log -2 master..
L’option -2
affiche uniquement les 2 derniers commits de notre sous-ensemble sélectionné de l’historique.
Historique de validation Git pour la branche avec l’opérateur Caret ^
L’opérateur caret ^
exclut tous les commits accessibles depuis la branche sur laquelle il opère. Nous pouvons l’utiliser pour afficher uniquement l’historique de notre branche actuelle.
git log ^master experiment_branch
Historique de validation Git pour la branche avec l’option --not
Nous pouvons également obtenir le même résultat en utilisant l’option --not
devant un nom de branche. Cela exclut tous les commits accessibles depuis cette branche.
git log experiment_branch --not master
Nous voyons qu’il fait la même chose et ne montre que les commits non fusionnés sur notre experiment_branch
.
Ressources
- https://git-scm.com/book/en/v2/Git-Basics-Viewing-the-Commit-History
- https://rakhesh.com/coding/git-view-the-commit-log-of-a-remote-branch/
- https://git-scm.com/book/en/v2/Git-Basics-Viewing-the-Commit-History
- https://stackoverflow.com/questions/14889017/how-to-show-local-branch-history#14889649
- https://stackoverflow.com/questions/16974204/how-to-get-commit-history-for-just-one-branch