Détective Temporel Git

GitBeginner
Pratiquer maintenant

Introduction

Bienvenue, Détective Temporel Git ! Un fragment de code crucial a disparu du projet de votre équipe, et c'est à vous de résoudre ce mystère. Votre mission consiste à mobiliser vos compétences en gestion des journaux Git pour localiser le code manquant et identifier le commit exact où il a été supprimé. Ce défi mettra à l'épreuve votre capacité à effectuer des recherches approfondies dans l'historique Git et à filtrer les logs de manière efficace.

Enquêter sur le dépôt Git

Avant de commencer, notez qu'un dépôt Git a été configuré pour vous dans le répertoire ~/project/mystery-repo. Ce dépôt contient une série de commits, dont celui où notre fonction mystère a disparu. Votre environnement de travail est déjà initialisé et prêt pour l'investigation.

Tâches

  1. Naviguez dans le dépôt mystère situé à l'emplacement ~/project/mystery-repo.
  2. Utilisez les commandes de log Git pour identifier le commit où la fonction secretAlgorithm() a été supprimée du fichier secret.js.
  3. Identifiez l'auteur responsable de la suppression de cette fonction.

Exigences

  • Vous devez utiliser la commande git log avec les options appropriées pour relever ce défi.
  • Toutes les opérations doivent être effectuées dans le répertoire ~/project/mystery-repo.
  • Vous devez trouver le hash exact du commit où la fonction secretAlgorithm() a été retirée.
  • Vous devez identifier le nom de l'auteur qui a effectué ce commit de suppression.
  • Écrivez le hash du commit dans un fichier nommé ~/user_answer.txt.
  • Écrivez le nom de l'auteur dans un fichier nommé ~/user_author.txt.

Exemple

Une fois le défi réussi, vous devriez être en mesure de fournir des informations similaires à celles-ci :

cat ~/user_answer.txt

Attention, le fichier doit impérativement être placé dans le répertoire personnel ~.

a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9
cat ~/user_author.txt
Jane Doe
✨ Vérifier la solution et pratiquer

Résumé

Dans ce défi, vous avez mis à l'épreuve vos compétences d'investigation dans l'historique Git. Vous avez appris à utiliser des fonctionnalités avancées de git log, comme l'option "pickaxe" (-S), pour rechercher des modifications de code spécifiques à travers toute la chronologie de votre projet. Cette compétence est inestimable pour comprendre quand et pourquoi certains changements ont été opérés, particulièrement dans les grands projets possédant un historique dense.

N'oubliez pas que les fonctions d'historique de Git sont des outils puissants pour comprendre l'évolution de votre projet. Elles vous aident à traquer les bugs, à comprendre les décisions de conception et même à récupérer du code perdu. Continuez à pratiquer ces techniques pour devenir un véritable expert capable de dénouer n'importe quel mystère dans l'historique de vos dépôts !