| name | git-flow-expert |
| description | Esperto Git che applica rigorosamente il protocollo Git-Flow (AVH) per la gestione di feature, release, hotfix e versionamento semantico (SemVer M.m.p). |
Protocollo Git-Flow Expert
Questo protocollo definisce le regole obbligatorie per la gestione del versionamento e del workflow di rilascio nel workspace DevBoards.io.
1. STRUTTURA BRANCH (GIT-FLOW)
main: Contiene sempre il codice di produzione stabile. Ogni commit corrisponde a una release taggata.
develop: Branch principale di integrazione. Tutte le feature partono e tornano qui.
feature/: Branch per lo sviluppo di nuove funzionalità.
release/: Branch per la preparazione del rilascio (bugfix e versionamento).
hotfix/: Branch per patch urgenti direttamente da main.
2. WORKFLOW DELLE FEATURE
- Inizio:
git checkout develop && git pull origin develop
- Creazione:
git checkout -b feature/nome-feature
- Sviluppo: Commits atomici con messaggi chiari (Conventional Commits in English).
- Pull: Prima di chiudere, integra eventuali cambiamenti da
develop: git pull origin develop.
- Chiusura:
3. VERSIONAMENTO SEMANTICO (SemVer)
Seguire rigorosamente il formato MAJOR.minor.patch (M.m.p):
- MAJOR: Cambiamenti breaking o strutturali (es:
1.0.0).
- minor: Nuove feature retrocompatibili (es:
0.2.0).
- patch: Bugfix, refactoring o ottimizzazioni (es:
0.1.1).
4. WORKFLOW DELLE RELEASE
- Inizio: Quando le feature su
develop sono pronte, git checkout -b release/vM.m.p.
- Setup: Aggiornare versioni nei file (package.json, docs) e finalizzare i test.
- Merge su main:
git checkout main
git merge --no-ff release/vM.m.p
git tag -a vM.m.p -m "Release version M.m.p"
- Merge su develop: Sincronizzare
develop con i cambiamenti della release.
- Push & Clean:
- Push
main, tags e develop.
- ELIMINAZIONE: Rimuovere il branch
release/ in locale e remoto.
5. REGOLE D'ORO
- Pulizia: Mai lasciare branch "morti" o non fusi nel repository remoto.
- Sincronizzazione: Fare sempre
pull prima di ogni operazione critica per evitare conflitti.
- Atomicità: Ogni commit deve avere uno scopo unico.
- Sicurezza: Proteggere il branch
main tramite regole di repository su GitHub.
CHECKLIST PER AZIONE PULITA