Skip to content
Commencer

Lab Niveau 02 — Manipuler

  • Créer un fichier suivi par Git
  • Comprendre la Staging Area
  • Réaliser un commit

Créez README.md avec le contenu suivant :

# Git Playground

Vérifiez :

Terminal window
git status

Question : Pourquoi Git indique-t-il Untracked ?


Terminal window
git add README.md
git status

Résultat attendu :

Changes to be committed

Terminal window
git commit -m "feat: initial project"

Vérifiez l’historique :

Terminal window
git log

Résultat attendu : Premier commit affiché.


  • Le fichier README.md a été créé
  • git status affiche “Untracked” pour le fichier
  • git add README.md a été exécuté
  • git status affiche “Changes to be committed”
  • Un commit a été réalisé avec git commit
  • git log affiche le commit créé

  • Staging Area
  • git add, git commit, git log

Question

Quel est le rôle de la Staging Area ?

Cliquer pour révéler la réponse
Réponse

Zone intermédiaire où l'on prépare les fichiers avant de les valider dans un commit

Cliquer pour voir la question
Question

Quelle commande ajoute un fichier à la Staging Area ?

Cliquer pour révéler la réponse
Réponse

git add <fichier> ou git add . pour tout ajouter

Cliquer pour voir la question
Question

Quelle commande enregistre un commit ?

Cliquer pour révéler la réponse
Réponse

git commit -m "message descriptif"

Cliquer pour voir la question

1. Quel est le rôle de la Staging Area ?

2. Quelle commande ajoute un fichier à la Staging Area ?

3. Quelle commande affiche l'historique des commits ?

1. Pourquoi la manipulation est-elle cruciale ?

Section titled “1. Pourquoi la manipulation est-elle cruciale ?”

Vous avez initialisé votre dépôt dans le Niveau 01, mais maintenant vous devez apprendre à l’alimenter. La manipulation de fichier est l’opération quotidienne dans tout projet de développement logiciel.

  • Nouvelle fonctionnalité : Vous devez ajouter de nouveaux fichiers de code pour une fonctionnalité demandée
  • Correctif de bug : Vous allez modifier un fichier existant pour corriger un problème
  • Rajout de documentation : Vous devez ajouter ou mettre à jour le fichier README

Sans une maîtrise correcte de ces opérations, vous risquez :

  • d’écraser involontairement le travail d’un coéquipier
  • de committer des fichiers qui ne devraient pas être dans le dépôt
  • de perdre le historique de vos modifications

Les développeurs qui sautent cette étape rencontrent fréquemment :

  1. Commits non intentionnels : git commit -a sans avoir fait git add d’abord committe tout ce qui est dans le Working Directory
  2. Fichiers oubliés : Oublier d’ajouter un nouveau fichier crucial, qui reste en tant que Untracked永远
  3. Histoires polluées : Commits contenant des fichiers temporaires, des logs d’erreur ou des secrets par mégarde
  • Vous comprenez pourquoi chaque étape du flux de travail compte
  • Vous pouvez expliquer la différence entre Working Directory et Staging Area
  • Vous avez identifié les 3 pièges courants listés ci-dessus

La Staging Area (également appelée Index) est la zone de préparation de Git. Elle intervient entre le Working Directory et le Local Repository.

Pourquoi avons-nous besoin de la Staging Area ?

Section titled “Pourquoi avons-nous besoin de la Staging Area ?”

Elle vous permet de :

  • Sélectionner quels fichiers inclure dans le prochain commit
  • Pass en revue vos modifications avant de les valider
  • Modifier le contenu d’un commit avant de l’enregistrer
Terminal window
# Créer un nouveau fichier
echo "Hello Git" > nouvelle-fonctionnalite.js
# Vérifier l'état actuel
git status
# Ajouter uniquement ce fichier
git add nouvelle-fonctionnalite.js
# Vérifier à nouveau
git status

Résultat attendu après git add :

Changes to be committed:
(use "git restore --staged <file>" to unstage)
nouvelle-fonctionnalité.js
  • Vous pouvez distinguer les fichiers “Changes not staged” vs “Changes to be committed”
  • Vous savez que git add . ajoute TOUS les fichiersmodifiés
  • Vous savez utiliser git reset HEAD <fichier> pour défaire un git add :::

Maintenant que vous avez ajouté des fichiers à la Staging Area, passons au commit.

Terminal window
git commit -m "feat: initial project structure"

Résultat attendu :

[main (root-commit) a1b2c3d] feat: initial project structure
2 files changed, 4 insertions(+)
create mode 100644 README.md
create mode 100644 nouvelle-fonctionnalité.js

La commande git commit enregistre vos modifications dans l’historique du dépôt. L’option -m vous permet d’ajouter un message descriptif qui explique ce que contient ce commit. Ce message est crucial pour :

  • Se rappeler pourquoi cette modification a été faite
  • Aider les autres membres de l’équipe à comprendre l’historique
  • Respecter les conventions de commit (comme les Commits Conventionnels)
  • Vous avez réussi à exécuter git commit -m "message"
  • git log affiche votre nouveau commit en premier
  • Le message de commit est clair et descriptif :::

4. Terminal Playground — Pratique interactive

Section titled “4. Terminal Playground — Pratique interactive”

Entraînez-vous maintenant avec notre terminal interactif ci-dessous. Suivez les étapes dans l’ordre :

Commandes à exécuter

bash
# Cliquez sur les commandes à gauche pour les exécuter dans le simulateur
hashcode-academy:~$_

  • Vous avez réussi à exécuter l’enchaînement complet des commandes
  • Vous pouvez reproduire ces étapes sur votre propre terminal :::

Entraînez-vous à retenir les concepts clés en cliquant sur les cartes ci-dessous :

Question

Quel est le rôle de la Staging Area ?

Cliquer pour révéler la réponse
Réponse

Zone intermédiaire où l'on prépare les fichiers avant de les valider dans un commit

Cliquer pour voir la question
Question

Quelle commande ajoute un fichier à la Staging Area ?

Cliquer pour révéler la réponse
Réponse

git add <fichier> ou git add . pour tout ajouter

Cliquer pour voir la question
Question

Quelle commande enregistre un commit ?

Cliquer pour révéler la réponse
Réponse

git commit -m "message descriptif"

Cliquer pour voir la question

  • Vous pouvez mémoriser les 3 commandes de base présentées
  • Vous pouvez identifier la bonne commande pour chaque situation

Testez vos connaissances avec ces questions à choix multiples :

1. Quel est le rôle de la Staging Area ?

2. Quelle commande ajoute un fichier à la Staging Area ?

3. Quelle commande affiche l'historique des commits ?

4. Quelle commande configure votre nom pour les commits ?

5. Quelle commande configure votre email pour les commits ?


  • Vous avez réussi à répondre à toutes les questions
  • Vous avez identifié les bonnes commandes pour chaque situation

Erreur Cause Solution
git: command not found Git n’est pas installé Installez Git depuis https://git-scm.com/
fatal: not a git repository Vous essayez d’utiliser Git dans un dossier qui n’est pas un dépôt Utilisez git init dans le dossier approprié
error: there is no initial commit Vous essayez de faire git checkout sans commit initial Faites d’abord git add . puis git commit -m "initial"
Please tell me your name and email Git n’a pas d’identité configurée git config --global user.name "Votre Nom" et git config --global user.email "vous@exemple.com"

  • Vous connaissez les erreurs fréquentes et leurs solutions
  • Vous pouvez dépanner un problème basique sur Git

Terminal window
# Vérification
git --version
# Initialisation
git init
# Premier flux de travail
git status
git add <fichier>
git commit -m "message"
# Historique
git log
git log --oneline
# Configuration
git config --global user.name "Votre Nom"
git config --global user.email "vous@exemple.com"

  • Vous avez les commandes essentielles à portée de main
  • Vous pouvez reproduire ces commandes sans hésitation

  • Git est un système de contrôle de version distribué qui fonctionne localement (pas besoin d’Internet)
  • Les commandes de base que vous devez connaître par cœur : git --version, git init, git status, git add, git commit
  • Un dépôt Git se compose de votre Working Directory et du dossier .git/
  • Toujours configurer votre identité avec git config --global user.name et user.email avant votre premier commit
  • La Staging Area est l’étape intermédiaire entre la modification et le commit
  • Vous pouvez maintenant créer un fichier, l’ajouter au staging, et réaliser un commit

  • Git est un système de contrôle de version distribué qui fonctionne localement (pas besoin d’Internet)
  • Les commandes de base à connaître par cœur : git --version, git init, git status, git add, git commit
  • La Staging Area est l’étape cruciale entre la modification et le commit
  • Toujours configurer son identité (user.name, user.email) avant le premier commit
  • Vérifier l’état du dépôt avec git status avant et après chaque opération

  • validation final check
  • exercise completed
  • prêt pour niveau-03

HashCode Workshops
Part of the JoinHashCode ecosystem

Ctrl + K Rechercher dans les workshops