Introduction
Imaginez que vous êtes un développeur travaillant sur un projet de machine à remonter le temps. Soudain, votre "moi" du futur apparaît et vous avertit d'un bug critique dans le code actuel ! Vous devez rapidement sauvegarder votre travail en cours, corriger le bug, puis reprendre votre tâche initiale. Ce défi testera vos compétences avec Git stash dans un scénario à enjeux élevés où le temps s'entremêle !
Remiser, corriger et reprendre
État initial
Vous vous trouvez dans le répertoire ~/project. Le dossier time-machine est un nouveau dépôt Git contenant les fichiers suivants :
main-console.txt(contenu : "Bug: Temporal Flux Unstable")flux-capacitor.txt(contenu : "Work in progress")new-feature.txt(contenu : "Untracked feature")
Vous pouvez utiliser la commande git status pour vérifier l'état actuel du dépôt.
Tâches
- Remisez (stash) vos modifications actuelles, y compris les fichiers non suivis (untracked).
- Corrigez le "bug critique" dans la branche
masteren mettant à jour le contenu demain-console.txtpar "Fixed: Temporal Flux Stabilized". - Créez une nouvelle branche nommée
future-upgradesà partir de vos modifications remisées. - Assurez-vous que le correctif de bug effectué sur la branche master soit également présent dans la branche
future-upgrades.
Exigences
- Toutes les opérations doivent être effectuées dans le répertoire
~/project/time-machine. - Assurez-vous que vos modifications d'origine (suivies et non suivies) sont présentes dans la nouvelle branche.
- Le correctif du bug dans
main-console.txtdoit être présent à la fois dans les branchesmasteretfuture-upgrades.
Exemple
Une fois le défi terminé, votre dépôt devrait ressembler à ceci :
Sur la branche master :
main-console.txt (content: "Fixed: Temporal Flux Stabilized")
Sur la branche future-upgrades :
main-console.txt (content: "Fixed: Temporal Flux Stabilized") ## Contient le correctif de master
flux-capacitor.txt (content: "Work in progress") ## Modifications suivies d'origine
new-feature.txt (content: "Untracked feature") ## Fichier non suivi d'origine
Note : Pour atteindre cet état, vous devrez veiller à ce que les deux branches contiennent le correctif tout en préservant vos travaux en cours dans la branche future-upgrades.
Résumé
Dans ce défi, vous vous êtes exercé à utiliser Git stash dans un scénario d'urgence simulé. Vous avez appris à sauvegarder rapidement votre travail en cours (y compris les fichiers non suivis), à changer de contexte pour corriger un problème critique, puis à créer une nouvelle branche à partir de vos modifications remisées. Ces compétences sont essentielles pour maintenir un flux de travail fluide lorsque des tâches imprévues surgissent, vous permettant de jongler entre plusieurs responsabilités sans perdre votre travail ni briser votre concentration.
N'oubliez pas que si Git stash est un outil puissant pour stocker temporairement des modifications, il est préférable de l'utiliser pour du stockage à court terme. Pour des travaux de longue durée ou des fonctionnalités importantes, la création de branches dédiées reste souvent la meilleure approche. Continuez à pratiquer ces techniques, et vous serez paré pour affronter n'importe quel scénario de développement, même les plus temporels !



