GIT - 3 Le référentiel

Dans Git, l'ensemble des fichiers versionnés ainsi que leur historique constitue ce que l'on appelle un repository (ou dépôt). Il est facile de penser au repository comme à une simple collection de fichiers et de dossiers, mais en réalité il s'agit bien davantage : un repository est avant tout l'historique complet de toutes les modifications apportées aux fichiers d'un projet.

Le dossier .git, cœur du repository

Concrètement, à la racine du dossier de votre projet, Git crée un répertoire caché nommé .git. C'est ce dossier qui contient l'intégralité du repository : ses propres fichiers et sous-dossiers internes, gérés exclusivement par Git, qui stockent l'historique des commits, les branches, les tags, les objets compressés, la configuration, etc.

mon-projet/
├── .git/             # le repository proprement dit
├── src/
├── README.md
└── package.json

Tant que ce dossier .git existe, votre repository est intact, même si vous supprimez le reste : Git peut reconstruire l'état des fichiers à n'importe quel point de l'historique. À l'inverse, supprimer le .git détruit définitivement le repository (les fichiers eux restent, mais le versioning est perdu).

Garder un repository ciblé

  • Un repository contient tout l'historique de tous les fichiers qu'il versionne — il peut donc grossir rapidement.
  • Préférez des repositories ciblés et indépendants plutôt que des monorepos fourre-tout.
  • Par exemple, une application peut avoir un repository pour le frontend et un autre pour le backend.
  • Chaque composant devrait idéalement vivre dans son propre repository, sans être partagé avec d'autres applications.

Cette discipline facilite la collaboration, accélère les opérations Git (clone, pull, push) et évite les couplages indésirables entre projets.

En résumé

Un repository Git est bien plus qu'une simple collection de fichiers et dossiers - c'est l'historique complet des versions de tous les fichiers du projet. Le dossier `.git` en constitue la structure interne et contient l'ensemble des métadonnées de version. Il est recommandé de maintenir les repositories aussi ciblés que possible, par exemple en séparant les repositories pour le frontend et le backend, et d'éviter de partager un même repository entre plusieurs applications.

Points clés

  • Un repository Git n'est pas seulement une collection de fichiers, mais l'historique complet du contrôle de versions
  • Le dossier .git contient la structure interne du repository et tous les historiques des fichiers
  • Il est recommandé de maintenir les repositories ciblés et bien organisés
  • Les applications distinctes doivent avoir leurs propres repositories séparés
  • Éviter de partager un seul repository entre plusieurs applications pour une meilleure gestion

Questions fréquentes

Qu'est-ce qu'un repository Git exactement?

C'est bien plus qu'une collection de fichiers et dossiers - c'est l'historique complet des versions de tous les fichiers du projet. Le dossier .git en contient toute la structure interne.

Pourquoi est-il important de garder les repositories ciblés?

Pour une meilleure organisation et gestion. Par exemple, une application peut avoir un repository pour le frontend et un autre pour le backend, plutôt que de tout mélanger dans un seul repository.

Peut-on partager un repository entre plusieurs applications?

Non, il est recommandé que chaque application ait son propre repository séparé pour éviter les conflits et maintenir une meilleure organisation des projets.