Présentation du cours
📁 Documentation supplémentaire & Ressources
Un guide complet de projet étape par étape avec des captures d'écran est disponible pour vous accompagner de la création de votre compte jusqu'à votre premier dépôt.
Le dossier contient 2 versions :
| Version | Langue | Document |
|---|---|---|
| 🇬🇧 English | 01-ENG-commands-git.docx | Full Git commands reference with screenshots |
| 🇫🇷 Français | 01-FR-commandes-git.docx | Guide complet des commandes Git avec captures d'écran |
👉 Accéder à la documentation sur Google Drive
Ce document inclut :
- Comment créer votre compte GitHub (avec captures d'écran)
- Walkthrough du projet étape par étape
- Toutes les commandes Git essentielles avec des exemples
- Disponible en anglais et en français
Objectifs de la section
- Comprendre les objectifs et la structure du cours
- Connaître les critères d'évaluation et la notation
- Comprendre pourquoi le contrôle de version est essentiel dans le développement moderne
- Identifier les outils que vous utiliserez tout au long du cours
Le problème sans contrôle de version
Imaginez travailler sur un projet web pendant 3 semaines :
Sans contrôle de version, vous faites face à :
- Des dossiers remplis de fichiers nommés
_v2,_final,_FINAL_REAL - Impossible de savoir ce qui a changé entre deux versions
- Impossible de travailler simultanément avec un collègue
- Une mauvaise suppression et votre travail disparaît à jamais
- "Ça marchait hier, qu'est-ce qui a changé ?" — impossible à répondre
L'approche manuelle (et pourquoi elle échoue)
| Problème | Approche manuelle | Solution Git |
|---|---|---|
| Suivre les modifications | Copier les fichiers manuellement | Historique des commits automatique |
| Collaborer | S'envoyer des fichiers par e-mail | Push/pull depuis un dépôt partagé |
| Annuler une erreur | "J'espère avoir une sauvegarde..." | git revert ou git reset |
| Plusieurs fonctionnalités | Un dossier par fonctionnalité | Une branche par fonctionnalité |
| Savoir "qui a changé quoi" | Demander à tout le monde | git blame et git log |
Qu'est-ce que le contrôle de version ?
Le contrôle de version (aussi appelé gestion de source) est un système qui enregistre les modifications apportées aux fichiers au fil du temps, afin de pouvoir rappeler des versions spécifiques ultérieurement.
Chaque commit est un instantané de votre projet à un moment donné. Vous pouvez :
- Revenir à n'importe quel instantané
- Comparer deux instantanés
- Travailler sur plusieurs versions "parallèles" (branches)
Pourquoi Git ?
L'ascension de Git
| Année | Événement |
|---|---|
| 1991 | CVS (Concurrent Versions System) — premier VCS populaire |
| 2000 | SVN (Subversion) — VCS centralisé, améliore CVS |
| 2005 | Git créé par Linus Torvalds pour le développement du noyau Linux |
| 2008 | Lancement de GitHub — rend Git collaboratif |
| 2018 | Microsoft acquiert GitHub pour 7,5 milliards de dollars |
| 2026 | Git utilisé par 96 % des développeurs professionnels |
Pourquoi Git a gagné
| Fonctionnalité | SVN (Ancien) | Git (Moderne) |
|---|---|---|
| Architecture | Centralisée | Distribuée |
| Vitesse | Lente (serveur requis) | Rapide (opérations locales) |
| Branches | Coûteuses, lentes | Légères, instantanées |
| Travail hors ligne | Impossible | Capacité complète |
| Fusion | Complexe, sujette aux erreurs | Intelligente, puissante |
| Stockage | Copie complète par version | Stockage delta efficace |
Avec Git, chaque développeur possède une copie complète du dépôt sur sa machine, y compris l'historique complet. Cela signifie que vous pouvez travailler hors ligne et ne synchroniser que lorsque vous êtes prêt.
Structure du cours
Parcours d'apprentissage
Détail des modules
| Module | Sujet | Compétences clés | Durée |
|---|---|---|---|
| 00 | Introduction | Historique, installation, config, premier dépôt | 3h |
| 01 | Fondamentaux | Add, commit, log, diff, reset | 5h |
| 02 | Branches & Merge | Branch, merge, rebase, conflits | 6h |
| 03 | GitHub & Distants | Push, pull, clone, fork | 5h |
| 04 | Collaboration & PR | Pull Requests, workflows, revues | 6h |
| 05 | Git Avancé | Stash, cherry-pick, hooks, submodules | 5h |
Méthodologie pédagogique
L'approche en 3 étapes
Pour chaque concept, nous suivons le même cycle :
1. Pourquoi ça existe ? (Problème → Solution) (10 min)
2. Comment ça marche ? (Théorie + démo en direct) (20 min)
3. À vous de jouer ! (TP guidé) (30-60 min)
Complexité progressive
| Phase | Niveau | Ce que vous ferez |
|---|---|---|
| Semaines 1-2 | Débutant | Vos premiers commits et votre historique |
| Semaines 2-3 | Intermédiaire | Branches, merges, résolution de conflits |
| Semaines 3-4 | Intermédiaire+ | GitHub, collaboration distante |
| Semaines 4-5 | Avancé | PRs, revues de code, workflows professionnels |
| Semaine 6 | Expert | Commandes avancées, automatisation, bonnes pratiques |
Critères de réussite
| Critère | Description |
|---|---|
| Historique propre | Commits lisibles avec des messages significatifs |
| Discipline des branches | Stratégie correcte de branchement et de fusion |
| Collaboration | Utilisation efficace des Pull Requests |
| Résolution de conflits | Capacité à résoudre les conflits de merge |
| Workflow | Application d'un workflow d'équipe cohérent |
| Documentation | README et guide de contribution |
Matériel requis
Équipement
- Ordinateur avec n'importe quel OS (Windows, macOS, Linux)
- Terminal (PowerShell, Terminal.app, bash)
- Connexion internet stable
Logiciels à installer
| Outil | Utilisation | Installation |
|---|---|---|
| Git | Contrôle de version principal | git-scm.com |
| VS Code | Éditeur avec intégration Git | code.visualstudio.com |
| GitHub CLI | GitHub depuis le terminal | cli.github.com |
| Navigateur web | Accès à GitHub.com | Chrome ou Firefox |
Compte GitHub
- Créez un compte gratuit sur github.com
- Choisissez un nom d'utilisateur professionnel (vous le partagerez avec les employeurs !)
- Configurez votre photo de profil et votre bio (la première impression compte)
Extensions VS Code recommandées
| Extension | Utilité |
|---|---|
| GitLens | Visualisation Git améliorée dans VS Code |
| Git Graph | Graphe visuel des branches et commits |
| GitHub Pull Requests | Gérer les PRs directement dans VS Code |
| Git History | Parcourir et rechercher le log Git |
Checklist de configuration de l'environnement
Avant de passer à la leçon suivante, vérifiez votre environnement :
- Git est installé (
git --version) - VS Code est installé
- Compte GitHub est créé
- GitHub CLI est installé (
gh --version) - Terminal est accessible
# Vérifier l'installation de Git
git --version
# Attendu : git version 2.x.x
# Vérifier GitHub CLI
gh --version
# Attendu : gh version 2.x.x
# Vérifier votre config Git
git config --list