Comment vérifier si un dépôt Git a des commits

GitGitBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire (lab), vous apprendrez à vérifier si un dépôt Git contient des commits. Nous allons explorer deux méthodes principales : l'utilisation de la commande git log pour afficher l'historique complet des commits et l'utilisation de la commande git rev-list --count HEAD pour obtenir rapidement le nombre de commits.

Vous commencerez par utiliser git log pour voir l'historique détaillé d'un dépôt contenant déjà des commits. Ensuite, vous utiliserez git rev-list --count HEAD pour obtenir un nombre de commits sous forme numérique. Enfin, vous testerez ces méthodes sur un dépôt vide pour comprendre leur comportement lorsqu'aucun commit n'est présent.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL git(("Git")) -.-> git/SetupandConfigGroup(["Setup and Config"]) git(("Git")) -.-> git/BranchManagementGroup(["Branch Management"]) git/SetupandConfigGroup -.-> git/init("Initialize Repo") git/BranchManagementGroup -.-> git/log("Show Commits") subgraph Lab Skills git/init -.-> lab-560086{{"Comment vérifier si un dépôt Git a des commits"}} git/log -.-> lab-560086{{"Comment vérifier si un dépôt Git a des commits"}} end

Exécuter git log pour vérifier l'historique

Dans cette étape, nous allons utiliser la commande git log pour afficher l'historique des commits de notre dépôt Git. Cette commande est essentielle pour comprendre la chronologie de votre projet et voir les modifications qui ont été apportées.

Tout d'abord, assurez-vous que vous êtes dans le répertoire my-time-machine. Si ce n'est pas le cas, utilisez la commande cd pour y accéder :

cd ~/project/my-time-machine

Maintenant, exécutez la commande git log :

git log

Vous devriez voir une sortie similaire à celle-ci :

commit a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9 (HEAD -> master)
Author: Jane Doe <[email protected]>
Date:   Mon Aug 7 10:00:00 2023 +0000

    Send a message to the future

Cette sortie montre les détails du commit que nous avons créé dans le laboratoire précédent. Chaque entrée dans le journal (log) représente un seul commit, affichant des informations telles que le hachage du commit (un identifiant unique), l'auteur, la date et le message de commit.

La commande git log est votre fenêtre sur l'historique de votre projet. Au fur et à mesure que vous effectuez plus de commits, chacun d'eux sera ajouté à ce journal, créant un enregistrement chronologique de toutes les modifications. Cela est incroyablement précieux pour suivre l'avancement, comprendre comment votre projet a évolué et même déboguer des problèmes en voyant quand des modifications spécifiques ont été introduites.

Si vous avez de nombreux commits, la sortie de git log peut être assez longue. Vous pouvez appuyer sur q pour quitter la vue du journal et revenir à l'invite du terminal.

Utiliser git rev-list --count HEAD

Dans cette étape, nous allons apprendre une autre façon de voir rapidement combien de commits se trouvent dans notre dépôt en utilisant la commande git rev-list --count HEAD. C'est une méthode plus concise pour obtenir simplement le nombre de commits par rapport à git log.

Assurez-vous que vous êtes toujours dans le répertoire ~/project/my-time-machine.

Maintenant, exécutez la commande suivante :

git rev-list --count HEAD

Vous devriez voir un seul nombre en sortie :

1

Ce nombre représente le nombre total de commits dans votre branche actuelle (HEAD fait référence au sommet de la branche actuelle, qui est master dans notre cas). Étant donné que nous n'avons effectué qu'un seul commit jusqu'à présent, la sortie est 1.

La commande git rev-list est un outil puissant pour lister les objets de commit. Lorsqu'elle est combinée avec l'option --count, elle vous donne simplement le nombre total de commits accessibles depuis la référence spécifiée (dans ce cas, HEAD). Cela est particulièrement utile lorsque vous avez besoin d'un décompte rapide du nombre de points de sauvegarde dans l'historique de votre projet.

Alors que git log vous donne des informations détaillées sur chaque commit, git rev-list --count fournit un résumé numérique simple de la longueur de l'historique de votre projet. Les deux commandes sont utiles dans différents scénarios.

Tester un dépôt Git vide

Dans cette étape, nous allons explorer ce qui se passe lorsque vous exécutez git log et git rev-list --count HEAD dans un dépôt Git qui n'a pas encore de commits. Cela vous aidera à comprendre la sortie que vous avez vue dans le premier laboratoire lorsque vous avez initialisé votre dépôt pour la première fois.

Tout d'abord, créons un nouveau répertoire vide et initialisons un dépôt Git à l'intérieur. Assurez-vous que vous êtes dans le répertoire ~/project :

cd ~/project
mkdir empty-repo
cd empty-repo
git init

Vous devriez voir le message indiquant qu'un dépôt Git vide a été initialisé :

Initialized empty Git repository in /home/labex/project/empty-repo/.git/

Maintenant, exécutons git log dans ce dépôt vide :

git log

Vous verrez une sortie similaire à celle-ci :

fatal: your current branch 'master' does not have any commits yet

Ce message vous indique exactement ce qui se passe : il n'y a pas de commits dans la branche actuelle (master). git log a besoin de commits pour afficher un historique, donc il signale qu'il n'y a rien à afficher.

Ensuite, essayons git rev-list --count HEAD :

git rev-list --count HEAD

Cette fois, la sortie sera :

0

Cela a du sens ! Étant donné qu'il n'y a pas de commits, le nombre de commits accessibles depuis HEAD est zéro.

Comparer la sortie de ces commandes dans un dépôt vide par rapport à notre dépôt my-time-machine (qui a un commit) vous aide à consolider votre compréhension de ce que font ces commandes. git log affiche les détails des commits, tandis que git rev-list --count vous donne un simple décompte. Les deux commandes reflètent précisément l'état de l'historique du dépôt.

Vous pouvez maintenant supprimer le répertoire empty-repo car nous n'en aurons pas besoin pour les étapes suivantes :

cd ~/project
rm -rf empty-repo

Résumé

Dans ce laboratoire, nous avons appris à vérifier si un dépôt Git a des commits. Nous avons d'abord utilisé la commande git log pour afficher l'historique détaillé des commits, en comprenant sa structure de sortie, y compris le hachage du commit, l'auteur, la date et le message. Cette commande fournit un enregistrement chronologique des modifications du projet. Nous avons ensuite exploré une méthode plus concise en utilisant git rev-list --count HEAD, qui affiche directement le nombre total de commits dans la branche actuelle. Enfin, nous avons testé ces méthodes sur un dépôt vide pour observer la sortie lorsqu'il n'y a pas de commits, démontrant ainsi comment identifier un dépôt sans historique.