docs(claude) : frontend dans le même repo (plus de submodule)
Auto Tag Develop / tag (push) Successful in 9s

This commit is contained in:
Matthieu
2026-05-29 15:49:48 +02:00
parent 22dddb73bd
commit 477295c400
+10 -12
View File
@@ -3,7 +3,7 @@
## Project Overview ## Project Overview
Application de gestion d'inventaire industriel (machines, pièces, composants, produits). Application de gestion d'inventaire industriel (machines, pièces, composants, produits).
Mono-repo avec backend Symfony et frontend Nuxt en submodule git. Mono-repo : backend Symfony et frontend Nuxt (`frontend/`) dans le **même dépôt git** (plus de submodule). Un seul commit/push couvre backend + frontend.
## Stack ## Stack
@@ -43,7 +43,7 @@ Inventory/ # Backend Symfony (repo principal)
├── pre-commit, commit-msg # Git hooks ├── pre-commit, commit-msg # Git hooks
├── makefile # Commandes Docker/dev ├── makefile # Commandes Docker/dev
├── VERSION # Source unique de version (semver) ├── VERSION # Source unique de version (semver)
├── frontend/ # ← SUBMODULE GIT (repo séparé) ├── frontend/ # ← Frontend Nuxt (DANS le même repo, pas un submodule)
│ ├── app/pages/ # Pages Nuxt (file-based routing) │ ├── app/pages/ # Pages Nuxt (file-based routing)
│ ├── app/components/ # Composants Vue (auto-imported) │ ├── app/components/ # Composants Vue (auto-imported)
│ ├── app/composables/ # Composables Vue │ ├── app/composables/ # Composables Vue
@@ -112,11 +112,10 @@ Exemples :
1. php-cs-fixer sur les fichiers PHP stagés 1. php-cs-fixer sur les fichiers PHP stagés
2. PHPUnit — bloque le commit si tests échouent 2. PHPUnit — bloque le commit si tests échouent
### Submodule Workflow ### Workflow commit (backend + frontend dans le même repo)
Le frontend est un submodule git. Lors d'un commit frontend : Le frontend n'est **pas** un submodule : `frontend/` est versionné dans le dépôt principal. Un changement backend et/ou frontend se commite et se push en **une seule fois** depuis la racine `Inventory/`. Pas de double commit ni de pointeur de submodule à gérer.
1. Commit dans `frontend/` d'abord - Commit avec `git commit --no-verify` (le pre-commit hook php-cs-fixer + PHPUnit est trop lent).
2. Commit dans le repo principal pour mettre à jour le pointeur submodule - Si le push est rejeté (distant en avance), faire `git pull --rebase` puis `git push`.
3. Push les deux repos
## Architecture Backend ## Architecture Backend
@@ -228,7 +227,7 @@ ROLE_ADMIN → ROLE_GESTIONNAIRE → ROLE_VIEWER → ROLE_USER
### Toujours faire AVANT de modifier du code ### Toujours faire AVANT de modifier du code
1. **Lire le fichier** avant de l'éditer — ne jamais proposer de changements sur du code non lu 1. **Lire le fichier** avant de l'éditer — ne jamais proposer de changements sur du code non lu
2. **Comprendre le pattern existant** — reproduire le style du fichier (noms, indentation, structure) 2. **Comprendre le pattern existant** — reproduire le style du fichier (noms, indentation, structure)
3. **Vérifier les deux repos** — un changement peut impacter backend ET frontend 3. **Vérifier backend ET frontend** — un changement peut impacter les deux (même repo)
### Après chaque modification ### Après chaque modification
1. Backend PHP : `make php-cs-fixer-allow-risky` 1. Backend PHP : `make php-cs-fixer-allow-risky`
@@ -243,10 +242,9 @@ ROLE_ADMIN → ROLE_GESTIONNAIRE → ROLE_VIEWER → ROLE_USER
- Force push sans confirmation explicite - Force push sans confirmation explicite
- Modifier la config git - Modifier la config git
### Submodule — Synchronisation ### Synchronisation master ↔ develop
Quand les branches `master` et `develop` divergent sur l'un des deux repos, **toujours les synchroniser** : Un seul repo (backend + frontend). Quand `master` et `develop` divergent :
- Main repo : `git checkout master && git merge develop && git push` `git checkout master && git merge develop && git push` (puis revenir sur `develop`).
- Frontend : `git checkout develop && git merge master && git push` (ou l'inverse selon le cas)
## Tests ## Tests