docs(claude) : refactorise CLAUDE.md en index + extrait les regles dans .claude/rules/
- CLAUDE.md devient un index concis : contexte, stack, regles absolues numerotees, pointeurs vers les fichiers de regles detaillees via references @.claude/rules/*.md - Les conventions detaillees (architecture, backend, frontend, testing, naming, git, workflow) sont extraites dans .claude/rules/ pour rester chargees a la demande sans gonfler le context du CLAUDE.md principal - Ajoute la regle absolue "Ne jamais mentionner Claude/IA dans commits ou PR" (point 10) pour garder l'historique git signe par l'utilisateur
This commit is contained in:
39
.claude/rules/git.md
Normal file
39
.claude/rules/git.md
Normal file
@@ -0,0 +1,39 @@
|
||||
# Git
|
||||
|
||||
## Commits
|
||||
|
||||
Format : `<type>(<scope optionnel>) : <message>`
|
||||
**Espaces obligatoires** autour du `:`.
|
||||
|
||||
Types autorises (minuscules uniquement) : `build`, `chore`, `ci`, `docs`, `feat`, `fix`, `perf`, `refactor`, `revert`, `style`, `test`
|
||||
|
||||
Exemples :
|
||||
- `feat : add login page`
|
||||
- `fix(auth) : prevent null token crash`
|
||||
- `chore : bump version to v1.2.3`
|
||||
|
||||
## Regles de commit
|
||||
|
||||
- **Jamais commit sans demande explicite** de l'utilisateur
|
||||
- **Jamais force push** sans confirmation
|
||||
- **Jamais modifier la config git**
|
||||
- **Jamais mentionner Claude, Anthropic ou une IA** dans un commit (message, titre, body, footer, trailer) ou une PR (titre, description). Concretement, aucun des elements suivants ne doit apparaitre :
|
||||
- Trailer `Co-Authored-By: Claude <...>` / `Co-Authored-By: Anthropic`
|
||||
- Footer type `Generated with Claude Code`, `Generated by AI`, etc.
|
||||
- Emoji robot `🤖` ou similaire en tete/fin de message
|
||||
- Toute phrase attribuant la paternite du changement a une IA
|
||||
Les commits sont signes **uniquement** par l'utilisateur. Si un hook ou un template ajoute ces elements automatiquement, les retirer manuellement avant push.
|
||||
|
||||
## Versioning & tags
|
||||
|
||||
La version de l'app est dans `config/version.yaml` (parametre `app.version`).
|
||||
|
||||
Workflow de release :
|
||||
1. Bump `config/version.yaml` a la nouvelle version
|
||||
2. Commit dedie : `chore : bump version to v<X.Y.Z>`
|
||||
3. Tag : `git tag v<X.Y.Z>`
|
||||
4. Push : `git push origin develop --tags`
|
||||
|
||||
**A chaque creation de tag**, toujours mettre a jour `config/version.yaml` avec la meme version — sinon l'app ne connait pas sa propre version.
|
||||
|
||||
CI Gitea automatise le bump sur push `develop` (cf. `.gitea/workflows/`), mais un tag manuel reste possible.
|
||||
Reference in New Issue
Block a user