Comment vérifier si un dépôt Git a des modifications mises de côté

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 labo, vous apprendrez à vérifier si un dépôt Git contient des modifications mises de côté (stashed). Nous allons explorer la commande git stash list pour afficher les mises de côté existantes et utiliser git status pour vérifier l'état de votre répertoire de travail.

En suivant les étapes, vous comprendrez comment identifier si vous avez temporairement enregistré des modifications à l'aide de git stash et confirmer que votre arbre de travail est propre lorsqu'il n'y a ni mises de côté ni modifications non validées.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL git(("Git")) -.-> git/BasicOperationsGroup(["Basic Operations"]) git(("Git")) -.-> git/DataManagementGroup(["Data Management"]) git/BasicOperationsGroup -.-> git/status("Check Status") git/DataManagementGroup -.-> git/stash("Save Changes Temporarily") subgraph Lab Skills git/status -.-> lab-560090{{"Comment vérifier si un dépôt Git a des modifications mises de côté"}} git/stash -.-> lab-560090{{"Comment vérifier si un dépôt Git a des modifications mises de côté"}} end

Exécuter git stash list pour vérifier

Dans cette étape, nous allons apprendre à utiliser git stash. Imaginez que vous travaillez sur une fonctionnalité, mais que soudainement, vous devez passer à une autre tâche ou corriger un bogue. Votre travail actuel n'est pas encore prêt à être validé (committed), mais vous ne voulez pas le perdre. C'est là que git stash devient utile !

git stash enregistre temporairement vos modifications non validées (tant celles qui sont indexées que celles qui ne le sont pas) et remet votre répertoire de travail à l'état du commit HEAD. C'est comme mettre votre travail actuel de côté dans un endroit sûr pour pouvoir travailler sur autre chose, puis y revenir plus tard.

Commençons par vérifier si vous avez des modifications mises de côté. Dans votre terminal, assurez-vous d'être dans le répertoire ~/project/my-time-machine et exécutez la commande suivante :

cd ~/project/my-time-machine
git stash list

Étant donné que c'est probablement la première fois que vous utilisez git stash dans ce dépôt, la sortie devrait être vide ou indiquer qu'aucune mise de côté n'a été trouvée. Cela signifie qu'il n'y a pas de mises de côté enregistrées dans votre dépôt actuel.

## Si aucune mise de côté n'existe, vous pourriez ne voir aucune sortie ou un message comme :
## No stashed changes found.

Comprendre git stash list est la première étape pour gérer vos modifications mises de côté. Elle vous permet de voir quelles mises de côté vous avez enregistrées, ce qui est crucial avant de les appliquer ou de les supprimer.

Vérifier avec git status

Dans l'étape précédente, nous avons vérifié les mises de côté existantes en utilisant git stash list. Maintenant, utilisons git status pour voir l'état actuel de notre répertoire de travail. Cette commande est essentielle pour comprendre quelles modifications sont présentes et si elles sont suivies (tracked) par Git.

Assurez-vous de toujours être dans le répertoire ~/project/my-time-machine. Exécutez la commande suivante :

git status

Étant donné que nous n'avons apporté aucune modification depuis notre dernier commit (dans le labo précédent), la sortie devrait indiquer que votre arbre de travail est propre.

On branch master
nothing to commit, working tree clean

Cette sortie confirme qu'il n'y a pas de modifications non validées dans votre dépôt. Le répertoire de travail correspond au dernier commit sur la branche master. C'est l'état que l'on attendrait après avoir créé un commit ou après avoir appliqué une mise de côté et résolu tous les conflits.

Comprendre la sortie de git status est crucial pour gérer votre flux de travail Git. Elle vous indique quels fichiers ont été modifiés, lesquels sont indexés pour le prochain commit et lesquels ne sont pas suivis.

Tester un dépôt sans mise de côté

Dans les étapes précédentes, nous avons confirmé que notre dépôt est propre et qu'il n'y a pas de mises de côté existantes. C'est l'état idéal pour commencer à expérimenter avec git stash.

Pour démontrer le fonctionnement de git stash, nous devons d'abord apporter quelques modifications à notre dépôt. Modifions le fichier message.txt que nous avons créé dans le labo précédent.

Assurez-vous d'être dans le répertoire ~/project/my-time-machine. Ouvrez le fichier message.txt à l'aide de l'éditeur nano :

nano message.txt

Ajoutez une nouvelle ligne au fichier, par exemple :

Hello, Future Me
This is a new line.

Enregistrez le fichier en appuyant sur Ctrl + S et quittez nano en appuyant sur Ctrl + X.

Maintenant, vérifions à nouveau l'état de notre dépôt :

git status

Vous devriez voir une sortie indiquant que message.txt a été modifié :

On branch master
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   message.txt

no changes added to commit (use "git add" and/or "git commit -a")

Cette sortie montre que nous avons apporté des modifications à message.txt, mais ces modifications ne sont pas encore indexées pour un commit. C'est le scénario idéal pour utiliser git stash. Dans l'étape suivante, nous utiliserons git stash pour enregistrer temporairement ces modifications.

Résumé

Dans ce labo, nous avons appris à vérifier les modifications mises de côté dans un dépôt Git. Nous avons commencé par utiliser la commande git stash list pour voir si des mises de côté étaient actuellement enregistrées. Une sortie vide ou un message indiquant qu'il n'y a pas de mises de côté confirme qu'aucune modification n'a été temporairement stockée à l'aide de git stash.

Nous avons ensuite utilisé git status pour vérifier l'état de notre répertoire de travail. Un arbre de travail propre, comme indiqué par la sortie de git status, confirme qu'il n'y a pas de modifications non validées dans le dépôt. Ces deux commandes sont fondamentales pour comprendre l'état actuel de votre dépôt Git et gérer les modifications mises de côté.