Prise en main de Git — Chapitre 2 / 4
Le cycle fondamental
Git fonctionne avec 3 zones et quelques commandes. Ce chapitre t'apprend à maîtriser le cycle complet. Du fichier modifié au commit enregistré.
Les 3 zones de Git
Git organise ton travail en 3 zones. Chaque zone a un rôle précis. Comprendre ces 3 zones est essentiel pour utiliser Git correctement.
Zone 1 : Working Directory (ton dossier de travail)
C'est le dossier sur ton ordinateur. C'est là que tu modifies tes fichiers au quotidien.
Imagine ton bureau. Tu travailles dessus, tu poses des feuilles, tu les modifies. C'est ton espace de travail.
Zone 2 : Staging Area (la zone de préparation)
C'est une zone intermédiaire. Tu y places les fichiers que tu veux inclure dans le prochain commit.
Imagine une enveloppe. Tu choisis quelles feuilles mettre dedans avant de l'envoyer. Tu peux ajouter ou retirer des feuilles avant de fermer l'enveloppe.
Zone 3 : Repository (l'historique)
C'est l'historique complet de ton projet. Chaque commit est stocké ici de façon permanente.
Imagine une armoire d'archives. Chaque enveloppe fermée est rangée dedans. Tu peux toujours retrouver une ancienne version.
# Le flux de travail Git
Bureau → git add → Enveloppe → git commit → Archives
# En termes Git :
Working Dir → git add → Staging → git commit → Repository
git status : voir où tu en es
Mot clé : git status
Cette commande te montre l'état de ton projet. Elle te dit quels fichiers ont changé. Elle te dit quels fichiers sont prêts pour le commit. C'est la commande que tu utiliseras le plus souvent.
Fiche complète sur git status →Quand tu tapes git status, Git te montre 3 catégories de fichiers :
En vert : prêts pour le commit
Ces fichiers sont dans la staging area. Ils seront inclus dans le prochain commit.
En rouge : modifiés mais pas préparés
Ces fichiers ont changé mais ne sont pas encore dans la staging area.
Untracked : nouveaux fichiers
Ces fichiers sont nouveaux. Git ne les suit pas encore.
git diff : voir ce qui a changé
Mot clé : git diff
Cette commande te montre le détail de ce qui a changé dans tes fichiers. Alors que git status te dit quels fichiers ont changé,git diff te montre quoi exactement a changé dedans.
Par défaut, git diff compare le working directory avec la staging area. C'est-à-dire : ce qui a changé mais que tu n'as pas encore ajouté avec git add.
$ git diff
diff --git a/readme.md b/readme.md
--- a/readme.md
+++ b/readme.md
@@ -1,2 +1,3 @@
# Mon projet
-Description du projet
+Description détaillée du projet
+Version 1.0
Les lignes en rouge (précédées de -) sont supprimées. Les lignes en vert (précédées de +) sont ajoutées.
$ git diff --staged
# Montre les changements déjà ajoutés à la staging area
# Utile pour vérifier ce que ton prochain commit contiendra
Bonne pratique
Avant de faire git add, lance un git diff pour relire tes changements. C'est l'occasion de repérer une erreur ou un oubli avant de commiter.
git add : préparer ses fichiers
Mot clé : git add
Cette commande copie un fichier dans la staging area. C'est comme mettre une feuille dans l'enveloppe. Le fichier n'est pas encore sauvegardé. Il est juste préparé.
Fiche complète sur git add →Tu peux ajouter un seul fichier. Ou tu peux ajouter tous les fichiers modifiés d'un coup.
$ git add readme.md
# Ajoute un seul fichier
$ git add .
# Ajoute tous les fichiers modifiés
git commit : sauvegarder
Mot clé : git commit
Cette commande crée un snapshot permanent. Elle prend tout ce qui est dans la staging area. Et elle en fait un commit avec un message qui explique ce que tu as fait. C'est comme fermer l'enveloppe et la ranger dans les archives.
Fiche complète sur git commit →$ git commit -m "Ajouter la page d'accueil"
[main a1b2c3d] Ajouter la page d'accueil
1 file changed
Bonne pratique
Un commit = une action. Fais des commits petits et clairs.
Bon message : "Ajouter le formulaire de contact". Mauvais message : "update" ou "fix".
Le message doit expliquer pourquoi tu as fait ce changement. Pas juste "quoi".
git restore : annuler des changements
Mot clé : git restore
Cette commande permet d'annuler des modifications. Tu peux restaurer un fichier comme il était avant. Tu peux aussi retirer un fichier de la staging area.
Fiche complète sur git restore →Parfois tu modifies un fichier et tu regrettes. Pas de panique. Git peut annuler ta modification.
$ git restore readme.md
# Annule les modifications dans le fichier
# Le fichier redevient comme au dernier commit
$ git restore --staged readme.md
# Retire le fichier de la staging area
# Le fichier reste modifié, mais il ne sera pas commité
Résumé : le cycle complet
Voici le cycle que tu répéteras à chaque fois que tu travailles avec Git :
Tu modifies des fichiers
Tu travailles dans ton dossier (working directory).
Tu vérifies l'état avec git status
Tu vois quels fichiers ont changé.
Tu inspectes les détails avec git diff
Tu vois exactement ce qui a changé ligne par ligne.
Tu prépares avec git add
Tu choisis quels fichiers mettre dans le prochain commit.
Tu sauvegardes avec git commit
Tu crées un snapshot permanent avec un message clair.
Pour aller plus loin
Erreurs fréquentes
- ●Utiliser
git commit -am. C'est un raccourci qui fait add + commit. Mais il ne prend pas les fichiers nouveaux (untracked). - ●Oublier
git addavant le commit. Le commit sera vide ou incomplet. - ●Faire un commit géant avec 15 modifications différentes. Un commit doit contenir une seule action logique.
Ton avis compte
Aide-nous à améliorer cette formation en partageant ton retour.