dev:release-management
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
dev:release-management [2015/02/16 10:05] – Aggiunta proposta warp10 warp10 | dev:release-management [2015/07/17 10:24] – typo e precisione dei tag feroda | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | //FIXME: nelle figure il naming origin/prod = origin/ | ||
+ | |||
====== Sviluppo e gestione release ====== | ====== Sviluppo e gestione release ====== | ||
- | Questo documento | + | Questo documento |
- | Il documento si riferisce al repository cosiddetto " | + | |
- | i contributori al codice fanno riferimento per portare avanti lo sviluppo. | + | |
Se si desidera conoscere il workflow di sviluppo beFair, basato sul modello a fork, | Se si desidera conoscere il workflow di sviluppo beFair, basato sul modello a fork, | ||
si consulti il documento [[git-forking-workflow]] | si consulti il documento [[git-forking-workflow]] | ||
- | - il ramo principale | + | Sul repo git di GF o degli altri software beFair (origin) ci sono due branch principali: |
- | - ogni release rilasciata | + | - **origin/ |
- | - $ver è il numero | + | |
- | - $extra può essere '' | + | - Su origin/ |
- | - per i bugfix rilasciati su una specifica versione stabile, verrà creato | + | - Convenzione di naming per il -m dei commit: < |
- | - ogni feature che lo necessita può essere sviluppata in un branch | + | - **origin/ |
+ | - Da origin/ | ||
+ | | ||
+ | {{: | ||
- | ==== Proposta | + | Ogni sviluppatore clona sulla sua macchina i due branch principali |
+ | - **Feature branch**: è dove si sviluppa una nuova feature. Tipicamente esiste solo sulla macchina dello sviluppatore, | ||
+ | - Si brancha da origin/ | ||
+ | - Si mergia su origin/ | ||
+ | - Convenzione di naming: '' | ||
- | Sul repo git di GF (origin) ci sono due branch principali: | + | {{:dev:feature-branches2.png?200|}} |
- | - origin/prod è il branch dove HEAD corrisponde sempre a codice pronto per il deploy in produzione. In altre parole, ogni commit è testato e deployable in produzione. | + | |
- | - Da origin/prod si brancha solo origin/dev. | + | |
- | - Su origin/prod si mergia solo da origin/ | + | |
- | - Convenzione di naming: < | + | |
- | | + | |
- | - Da origin/dev si branchano tutti i branch, incluso origin/ | + | |
- | - Da origin/dev si mergia da tutti gli altri branch, escluso origin/prod | + | |
- | Sulla macchina di ogni sviluppatore si clonano i due branch di origin, e ognuno può creare branch secondo lo schema sotto. | + | |
- | - Feature branch: è dove si sviluppa una nuova feature. Tipicamente esiste solo sulla macchina dello sviluppatore. | + | - Convenzione di naming: |
- | - Si brancha da origin/ | + | |
- | - Si mergia su origin/dev usando sempre e soltanto --no-ff (lo so, lo so, ma qui ha molti più pro che contro) | + | |
- | - Convenzione di naming: nessuna, basta non usare " | + | |
- | | + | |
- | - Hotfix branch: è dove si fixano bug severi del codice già andato in produzione. | + | |
- | - Si brancha da origin/ | + | |
- | - Si mergia su origin/prod e origin/dev con --no-ff | + | |
- | - Convenzione di naming: | + | |
+ | - **Hotfix branch**: è dove si fixano bug severi del codice già andato in produzione. | ||
+ | - Si brancha da '' | ||
+ | - Si mergia su '' | ||
+ | - Convenzione di naming: '' | ||
+ | {{: |
dev/release-management.txt · Last modified: 2015/07/17 10:35 by feroda