TP / Lab – Outils & méthodes

Mise en œuvre d’un système de gestion de versions (Git & GitHub)

Initialisation d’un dépôt, commits structurés, branches, merges, gestion des conflits et publication sur GitHub avec un workflow simple.

Git GitHub Branches Workflow
Git & GitHub - aperçu Git - commits et historique GitHub - dépôt et README

Astuce : cliquez sur l’image pour zoomer.

Présentation du projet

L’objectif de cette réalisation était de mettre en place un système de gestion de versions fiable pour suivre l’évolution d’un projet, revenir en arrière si besoin et travailler de manière plus “pro”. Pour cela, j’ai utilisé Git en local, puis GitHub pour héberger le dépôt et centraliser l’historique.

J’ai commencé par initialiser un dépôt, structurer les commits et organiser le travail avec des branches. J’ai ensuite réalisé des fusions (merge) et testé la résolution de conflits afin de comprendre les cas concrets qu’on rencontre en équipe. Enfin, j’ai publié le projet sur GitHub, ajouté un README et appliqué quelques bonnes pratiques (ignore, structure, messages clairs).

  • Initialisation du dépôt Git et premiers commits
  • Création de branches (feature / main) et fusions (merge)
  • Gestion de conflits et validation de l’historique
  • Publication sur GitHub (remote, push/pull)
  • Documentation : README + fichier .gitignore

Outils et technologies utilisés

  • Git (CLI) : init, add, commit, log, status
  • Branches : branch, checkout/switch, merge
  • Résolution de conflits : choix, validation, commit de merge
  • GitHub : dépôt distant (remote), push/pull
  • Bonnes pratiques : README, .gitignore, messages de commit
  • (Optionnel) Outils : VS Code / terminal / interface GitHub

Ce que j’ai appris

  • Comprendre la logique Git : instantanés, historique et traçabilité.
  • Faire des commits clairs et réguliers pour garder un suivi propre.
  • Travailler avec des branches pour isoler une fonctionnalité.
  • Fusionner des modifications et gérer un conflit de manière contrôlée.
  • Publier un projet sur GitHub et synchroniser local ↔ distant.
  • Documenter un dépôt (README) et éviter les fichiers inutiles (.gitignore).