Un peu d’histoire
Git a été créé en 2005 par Linus Torvalds, le créateur du noyau Linux. Face aux limitations des outils existants, il a conçu un système de contrôle de version :
- Distribué — chaque développeur possède une copie complète de l’historique
- Rapide — les opérations sont effectuées localement
- Fiable — l’intégrité des données est garantie par des sommes de contrôle SHA-1
Pourquoi utiliser Git ?
| Sans Git | Avec Git |
|---|---|
projet_v1.zip, projet_v2_final.zip, projet_v2_VRAIMENT_final.zip |
Un historique clair et structuré |
| Pas de traçabilité des modifications | Chaque changement est documenté |
| Collaboration difficile | Travail en équipe simplifié |
| Risque de perte de données | Sauvegarde distribuée |
Les concepts clés
Le dépôt (repository)
Un dépôt est un dossier dont Git suit les modifications. Il contient :
- Vos fichiers de travail
- Un dossier caché
.git/qui stocke tout l’historique
Les trois zones de Git
┌─────────────────┐ git add ┌─────────────────┐ git commit ┌─────────────────┐
│ Working Dir │ ──────────────► │ Staging Area │ ──────────────► │ Repository │
│ (vos fichiers) │ │ (index) │ │ (historique) │
└─────────────────┘ └─────────────────┘ └─────────────────┘
- Working Directory — votre dossier de travail avec les fichiers modifiés
- Staging Area (index) — zone de préparation avant un commit
- Repository — l’historique complet de votre projet
Le commit
Un commit est un instantané (snapshot) de votre projet à un instant donné. Chaque commit contient :
- Les modifications effectuées
- Un message descriptif
- Un identifiant unique (hash SHA-1)
- Une référence vers le commit parent
# Exemple d'un premier commit
git add .
git commit -m "Initial commit : ajout de la structure du projet"
Résumé
- Git est un système de contrôle de version distribué
- Il permet de suivre l’historique de chaque modification
- Les trois zones (Working Dir → Staging → Repository) forment le flux de travail de base
