0005 — Pas de submodules
Contexte
- Le dépôt hub héberge la documentation, les scripts et la structure organisationnelle de référence.
- Le répertoire
projects/sert uniquement de conteneur pour des dépôts Git indépendants présents ou futurs. - Git propose les submodules pour embarquer un dépôt dans un autre, mais ce mécanisme ne correspond pas à l'objectif de ce hub.
Décision
- Ne pas utiliser de submodules dans le dépôt hub.
- Ne jamais référencer les projets de
projects/via.gitmodules. - Préférer des dépôts totalement indépendants, versionnés et publiés séparément.
Raisons
- Éviter la complexité opérationnelle propre aux submodules (initialisation, mise à jour, synchronisation des commits parents/enfants).
- Supprimer la friction lors des opérations
clone,pullet des workflows de maintenance. - Maintenir l'indépendance stricte des projets vis-à-vis du hub.
- Conserver une structure simple, lisible et prévisible pour la maintenance personnelle.
- Rester aligné avec un usage itératif et pragmatique du hub.
Conséquences
Positives
- Workflow Git plus direct et sans gestion croisée de sous-dépôts.
- Vision claire des responsabilités du dépôt hub versus celles des projets.
- Clonage et maintenance simplifiés, sans commandes supplémentaires.
- Séparation nette entre documentation partagée et projets applicatifs.
Négatives
- Absence de référence versionnée entre le hub et les projets stockés dans
projects/. - Impossibilité d'obtenir une vue intégrée d'un projet depuis le dépôt parent sans se rendre dans son dépôt dédié.
Alternatives considérées
- Submodules Git : rejetés car jugés trop complexes et fragiles pour ce cas personnel.
- Monorepo : rejeté afin que chaque projet conserve son dépôt, ses dépendances et son historique.
Statut
Accepté.