Démasquez les modifications secrètes du code

Beginner

Introduction

Bienvenue, détective Git ! Votre équipe travaille sur un projet top-secret, mais quelqu'un a effectué des modifications non autorisées dans le code. Votre mission consiste à utiliser vos compétences avec git diff pour mettre au jour ces changements et identifier les fichiers impactés. Ce défi mettra à l'épreuve votre capacité à comparer les différents états de votre dépôt et à localiser précisément des modifications spécifiques.

Enquêter sur le dépôt du projet secret

Avant de commencer, notez qu'un dépôt Git a été configuré pour vous dans le répertoire ~/project/secret-project. Ce dépôt contient le code original ainsi que les mystérieuses modifications. Votre espace de travail est déjà initialisé et prêt pour l'investigation.

Tâches

  1. Naviguez vers le dépôt du projet secret situé dans ~/project/secret-project.
  2. Utilisez les commandes Git diff pour identifier les fichiers qui ont été modifiés mais qui ne sont pas encore indexés (staged).
  3. Déterminez quels fichiers possèdent des modifications déjà indexées pour le prochain commit.
  4. Trouvez la ligne spécifique qui a été ajoutée au fichier encryption.js.

Exigences

  • Toutes les opérations doivent être effectuées dans le répertoire ~/project/secret-project.
  • Vous devez identifier :
    • Les noms des fichiers ayant des modifications non indexées.
    • Les noms des fichiers ayant des modifications indexées.
    • La ligne exacte ajoutée à encryption.js.
  • Remplissez le fichier ~/investigation_report.txt avec vos conclusions. Un modèle a été mis à votre disposition. Vous pouvez ouvrir et modifier ce fichier à l'aide d'un éditeur de texte sur le bureau.

Exemple

Une fois le défi réussi, votre fichier ~/investigation_report.txt devrait ressembler à ceci :

Unstaged files:
xxx.js
xxx.js

Staged files:
xxx.js
xxx.js

Added line in encryption.js:
const ……

Veillez à remplacer xxx.js par les noms de fichiers réels et const …… par la ligne exacte qui a été ajoutée. Ne modifiez pas le format du rapport, y compris les lignes vides.

Résumé

Dans ce défi, vous avez mis à l'épreuve vos compétences d'investigation avec git diff. Vous avez appris à utiliser les différentes options de la commande git diff pour examiner les changements dans les divers états de votre dépôt Git. Cette compétence est cruciale pour comprendre quelles modifications ont été apportées à votre projet, qu'elles soient prêtes pour le commit ou encore en cours de travail dans votre répertoire local.

N'oubliez pas que git diff est un outil puissant pour réviser les changements avant de valider, comprendre l'état actuel de votre projet et même pour le débogage. En maîtrisant ces techniques, vous êtes en bonne voie pour devenir un véritable détective Git, capable de débusquer n'importe quelle modification suspecte dans votre code !