logo

Cache Git

Parfois, vous souhaitez changer de branche, mais vous travaillez sur une partie incomplète de votre projet en cours. Vous ne voulez pas vous engager dans un travail à moitié fait. Le cache Git vous permet de le faire. Le commande git stash vous permet de changer de branche sans valider la branche actuelle.

La figure ci-dessous montre les propriétés et le rôle du stockage concernant le référentiel et le répertoire de travail.

Cache Git

Généralement, la signification de la cachette est « ranger quelque chose en toute sécurité dans un endroit caché .' Le sens dans Git est également le même pour stash ; Git enregistre temporairement vos données en toute sécurité sans engagement.

La sauvegarde prend l'état désordonné de votre répertoire de travail et l'enregistre temporairement pour une utilisation ultérieure. De nombreuses options sont disponibles avec git stash. Quelques options utiles sont indiquées ci-dessous :

    Cachette Git Sauvegarde de la cache Git Liste de cache Git Git stash appliquer Modifications du cache Git Git cachette pop Git cachette Git cache clair Branche de cache Git

Travail de cachette

Comprenons-le avec un scénario en temps réel. J'ai apporté des modifications à mon projet GitExample2 dans deux fichiers provenant de deux branches distinctes. Je suis dans un état de désordre et je n'ai encore entièrement modifié aucun fichier. Je souhaite donc le sauvegarder temporairement pour une utilisation future. Nous pouvons le cacher pour le sauvegarder sous son état actuel. Pour le cacher, jetons un coup d'œil à l'état actuel du référentiel. Pour vérifier l'état actuel du référentiel, exécutez la commande git status. La commande git status est utilisée comme :

graphique d'allocation des ressources

Syntaxe:

 $ git status 

Sortir:

Cache Git

À partir de la sortie ci-dessus, vous pouvez voir l'état selon lequel il existe deux fichiers non suivis. conception.css et nouveau fichier.txt disponible dans le dépôt. Pour le sauvegarder temporairement, nous pouvons utiliser la commande git stash. La commande git stash est utilisée comme :

Syntaxe:

 $ git stash 

Sortir:

Cache Git

Dans la sortie donnée, le travail est enregistré avec la commande git stash. Nous pouvons vérifier l'état du référentiel.

Cache Git

Comme vous pouvez le voir, mon travail est simplement caché à sa position actuelle. Maintenant, le répertoire est nettoyé. À ce stade, vous pouvez basculer entre les branches et travailler dessus.

Git Stash Save (Enregistrement des caches avec le message) :

Dans Git, les modifications peuvent être cachées avec un message. Pour cacher une modification avec un message, exécutez la commande ci-dessous :

Syntaxe:

 $ git stash save '' 

Sortir:

Cache Git

La réserve ci-dessus sera enregistrée avec un message

Liste de cache Git (vérifiez les caches stockés)

Pour vérifier les réserves stockées, exécutez la commande ci-dessous :

Syntaxe:

 $ git stash list 

Sortir:

Cache Git

Dans le cas ci-dessus, j'ai créé une réserve, qui s'affiche sous la forme ' stash@{0} : WIP sur le test : fichier CSS 0a1a475 '.

Si nous avons plus d’une réserve, alors il affichera toutes les caches respectivement avec un identifiant de cache différent. Considérez le résultat ci-dessous :

Cache Git

Il affichera toutes les cachettes avec indexation comme cachette@{0} : cachette@{1} : et ainsi de suite.

Git Stash Appliquer

Vous pouvez réappliquer les modifications que vous venez de stocker en utilisant la commande git stash. Pour appliquer le commit, utilisez la commande git stash, suivie de l'option apply. Il est utilisé comme :

Syntaxe:

 $ git stash apply 

Sortir:

Cache Git

La sortie ci-dessus restaure la dernière cachette. Maintenant, si vous vérifiez l’état du référentiel, il affichera les modifications apportées au fichier. Considérez ce qui suit sortir:

Cache Git

À partir du résultat ci-dessus, vous pouvez voir que le référentiel est restauré à son état précédent avant le stockage. Il affiche la sortie comme ' Modifications non planifiées pour la validation .'

En cas de plusieurs cachettes, vous pouvez utiliser la commande « git stash apply » suivie de l'identifiant d'index de cachette pour appliquer le commit particulier. Il est utilisé comme :

Syntaxe:

 $ git stash apply 

Considérez le résultat ci-dessous :

Sortir:

Cache Git

Si nous ne spécifions pas de cache, Git prend le cache le plus récent et essaie de l'appliquer.

ajouter à un tableau java

Modifications du cache Git

Nous pouvons suivre les caches et leurs modifications. Pour voir les modifications apportées au fichier avant et après l'opération de stockage, exécutez la commande ci-dessous :

Syntaxe:

 $ git stash show 

La commande ci-dessus affichera le fichier caché et les modifications qui y sont apportées. Considérez le résultat ci-dessous :

Sortir:

Cache Git

Le résultat ci-dessus montre que deux fichiers sont cachés et que deux insertions y sont effectuées.

Nous pouvons suivre exactement les modifications apportées au fichier. Pour afficher le contenu modifié du fichier, exécutez la commande ci-dessous :

Syntaxe:

 $ git stash show -p 

Ici, -p représente la réserve partielle. La commande donnée affichera les fichiers et le contenu modifiés, considérez le résultat ci-dessous :

Sortir:

Cache Git

La sortie ci-dessus montre le nom du fichier avec le contenu modifié. Cela agit de la même manière que la commande git diff. Le git diff La commande affichera également la sortie exacte.

Git Stash Pop (Réapplication des modifications cachées)

Git permet à l'utilisateur de réappliquer les commits précédents en utilisant la commande git stash pop. L'option popping supprime les modifications du cache et les applique à votre fichier de travail.

La commande git stash pop est assez similaire à git stash apply. La principale différence entre ces deux commandes est la commande stash pop qui supprime le cache de la pile après son application.

Syntaxe:

 $ git stash pop 

La commande ci-dessus réappliquera les commits précédents au référentiel. Considérez la sortie ci-dessous.

Sortir:

Java 8
Cache Git

Git Stash Drop (Unstash)

Le git cachette drop La commande est utilisée pour supprimer une réserve de la file d’attente. Généralement, il supprime la cache la plus récente. Des précautions doivent être prises avant d'utiliser la commande stash drop, car elle est difficile à annuler si elle est appliquée une fois.

La seule façon de revenir en arrière est de ne pas fermer le terminal après avoir supprimé la réserve. La commande stash drop sera utilisée comme :

Syntaxe:

 $ git stash drop 

Sortir:

Cache Git

Dans la sortie ci-dessus, la réserve la plus récente (cache@{0}) a été supprimé de trois caches. La commande stash list répertorie toutes les cachettes disponibles dans la file d'attente.

Nous pouvons également supprimer une réserve particulière de la file d'attente. Pour supprimer une réserve particulière des réserves disponibles, transmettez l'identifiant de la réserve dans la commande stash drop. Il sera traité comme :

Syntaxe:

tableau.sort en java
 $ git stash drop 

Supposons que j'ai deux réserves disponibles dans ma file d'attente et que je ne souhaite pas supprimer ma réserve la plus récente, mais que je souhaite supprimer l'ancienne. Ensuite, il fonctionnera comme suit :

 $ git stash drop stash@{1} 

Considérez le résultat ci-dessous :

Cache Git

Dans la sortie ci-dessus, le commit cachette@{1} a été supprimé de la file d'attente.

Git Stash Effacer

Le git cachette claire La commande permet de supprimer toutes les cachettes disponibles en même temps. Pour supprimer toutes les caches disponibles, exécutez la commande ci-dessous :

Syntaxe:

 $ git stash clear 

cela supprimera toutes les cachettes qui existent dans le référentiel.

Sortir:

Cache Git

Toutes les caches sont supprimées dans la sortie ci-dessus. La commande git stash list est vide car aucune réserve n'est disponible dans le référentiel.

Branche de cache Git

Si vous avez caché du travail sur une branche particulière et continuez à travailler sur cette branche. Ensuite, cela peut créer un conflit lors de la fusion. Il est donc bon de stocker le travail sur une branche distincte.

La commande git stash branch permet à l'utilisateur de cacher le travail sur une branche distincte pour éviter les conflits. La syntaxe de cette branche est la suivante :

Syntaxe:

 $ git stash branch 

La commande ci-dessus créera une nouvelle branche et transférera le travail caché dessus. Considérez le résultat ci-dessous :

Sortir:

Cache Git

Dans le résultat ci-dessus, le travail caché est transféré vers une branche testing nouvellement créée. Cela évitera le conflit de fusion sur la branche principale.