Aller au contenu principal

Présentation du cours

Semaine 1 1 heure

📁 Documentation supplémentaire & Ressources

Projet étape par étape avec captures d'écran

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 :

VersionLangueDocument
🇬🇧 English01-ENG-commands-git.docxFull Git commands reference with screenshots
🇫🇷 Français01-FR-commandes-git.docxGuide 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èmeApproche manuelleSolution Git
Suivre les modificationsCopier les fichiers manuellementHistorique des commits automatique
CollaborerS'envoyer des fichiers par e-mailPush/pull depuis un dépôt partagé
Annuler une erreur"J'espère avoir une sauvegarde..."git revert ou git reset
Plusieurs fonctionnalitésUn dossier par fonctionnalitéUne branche par fonctionnalité
Savoir "qui a changé quoi"Demander à tout le mondegit 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
1991CVS (Concurrent Versions System) — premier VCS populaire
2000SVN (Subversion) — VCS centralisé, améliore CVS
2005Git créé par Linus Torvalds pour le développement du noyau Linux
2008Lancement de GitHub — rend Git collaboratif
2018Microsoft acquiert GitHub pour 7,5 milliards de dollars
2026Git utilisé par 96 % des développeurs professionnels

Pourquoi Git a gagné

FonctionnalitéSVN (Ancien)Git (Moderne)
ArchitectureCentraliséeDistribuée
VitesseLente (serveur requis)Rapide (opérations locales)
BranchesCoûteuses, lentesLégères, instantanées
Travail hors ligneImpossibleCapacité complète
FusionComplexe, sujette aux erreursIntelligente, puissante
StockageCopie complète par versionStockage delta efficace
Git est distribué

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

ModuleSujetCompétences clésDurée
00IntroductionHistorique, installation, config, premier dépôt3h
01FondamentauxAdd, commit, log, diff, reset5h
02Branches & MergeBranch, merge, rebase, conflits6h
03GitHub & DistantsPush, pull, clone, fork5h
04Collaboration & PRPull Requests, workflows, revues6h
05Git AvancéStash, cherry-pick, hooks, submodules5h

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

PhaseNiveauCe que vous ferez
Semaines 1-2DébutantVos premiers commits et votre historique
Semaines 2-3IntermédiaireBranches, merges, résolution de conflits
Semaines 3-4Intermédiaire+GitHub, collaboration distante
Semaines 4-5AvancéPRs, revues de code, workflows professionnels
Semaine 6ExpertCommandes avancées, automatisation, bonnes pratiques

Critères de réussite

CritèreDescription
Historique propreCommits lisibles avec des messages significatifs
Discipline des branchesStratégie correcte de branchement et de fusion
CollaborationUtilisation efficace des Pull Requests
Résolution de conflitsCapacité à résoudre les conflits de merge
WorkflowApplication d'un workflow d'équipe cohérent
DocumentationREADME 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

OutilUtilisationInstallation
GitContrôle de version principalgit-scm.com
VS CodeÉditeur avec intégration Gitcode.visualstudio.com
GitHub CLIGitHub depuis le terminalcli.github.com
Navigateur webAccès à GitHub.comChrome 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

ExtensionUtilité
GitLensVisualisation Git améliorée dans VS Code
Git GraphGraphe visuel des branches et commits
GitHub Pull RequestsGérer les PRs directement dans VS Code
Git HistoryParcourir 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érification rapide
# 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

Prochaines étapes