Vous avez besoin de changer de branche, mais vous n’êtes pas prêt à valider les modifications que vous avez apportées à votre branche actuelle ? Vous pouvez stocker vos modifications et y revenir plus tard. C’est possible dans Git, que vous utilisiez GitHub ou un autre service d’hébergement.
Pourquoi stocker vos modifications ?
Stocker vos modifications est un excellent moyen de suivre votre travail en cours sans les valider dans la branche de travail. Cela vous permet de travailler entre plusieurs branches sans pousser aucun changement.
Il existe plusieurs cas dans lesquels vous devrez peut-être stocker vos modifications. Disons, par exemple, que vous travaillez sur la branche A. Cependant, il y a un bogue sérieux dans le code de la branche B qui nécessite votre attention immédiate. Vous devez basculer vers la branche B pour corriger le bogue, mais vous n’êtes pas prêt à valider le travail que vous avez effectué dans la branche A.
Grâce à git stash, vous pouvez stocker vos modifications dans la branche A sans les pousser, basculer et corriger le bogue dans la branche B, puis revenir à la branche A et reprendre là où vous vous étiez arrêté.
Comment stocker les modifications
Vous pouvez stocker vos modifications en exécutant une simple commande. Avant de faire cela, cependant, vous pouvez exécuter une commande différente pour voir exactement ce que vous allez stocker. Dans votre branche de travail, exécutez cette commande :
git status
Cela vous montrera à la fois les modifications mises en scène et non mises en scène que vous avez apportées à votre branche. Dans notre cas, nous avons modifié le fichier « test.md ». Gardez à l’esprit que git stash stockera les modifications mises en scène et non mises en scène.
Maintenant que vous avez passé en revue ce qui sera stocké, exécutez cette commande pour stocker les modifications :
git stash
Une fois exécuté, vous recevrez alors un message indiquant que vos modifications ont été stockées sur
Afficher les modifications stockées
Si vous avez enregistré plusieurs caches, vous voudrez peut-être voir une liste des caches avant d’essayer d’en récupérer une. Lorsque vous affichez une liste de vos réserves, notez le nom de la réserve que vous souhaitez récupérer et continuez à travailler.
Dans le terminal, exécutez cette commande :
git stash list
Une liste de caches sera alors retournée. Dans l’exemple ci-dessus, notre nom de réserve est stash@0
. Le nombre à l’intérieur des accolades est l’index. Si vous avez plusieurs caches sur la même branche, le nombre sera différent.
Si vous souhaitez afficher les détails d’un stash, exécutez :
git stash show
Vous pouvez également exécuter git stash show -p
pour afficher les résultats au format diff.
Récupérer les modifications stockées
Une fois que vous êtes prêt à reprendre là où vous vous étiez arrêté, vous devrez récupérer vos modifications stockées. Vous pouvez le faire de deux manières différentes. Une commande conservera une copie de vos modifications dans la réserve tout en la copiant dans votre branche de travail. L’autre copiera tout sur votre branche de travail, mais supprimera tout de la réserve.
Pour conserver une copie de vos modifications dans le stash et les transférer également dans votre branche de travail, exécutez :
git stash apply
Pour apporter les modifications à votre branche de travail mais supprimer la copie du stash, exécutez :
git stash pop
S’il y a plusieurs caches sur une même branche, ajoutez simplement le nom du cache à la fin de la commande.
Vous pouvez maintenant continuer à travailler avec vos modifications précédentes. Une fois que vous avez apporté toutes les modifications nécessaires à la branche et que vous l’avez fusionnée avec la branche principale, n’oubliez pas de supprimer la branche pour garder votre référentiel propre !
EN RELATION: Comment supprimer une branche sur GitHub