versionning
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
versionning [2019/02/06 17:55] – [Gitlab] benoit | versionning [2020/06/10 11:16] – [Upgrade] benoit | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== | + | ====== |
===== Semantic Versioning 2.0.0 ===== | ===== Semantic Versioning 2.0.0 ===== | ||
Ligne 42: | Ligne 42: | ||
* [[https:// | * [[https:// | ||
- | ==== GitFlow ==== | + | ==== Upgrade ==== |
+ | * [[https:// | ||
+ | |||
+ | < | ||
+ | sudo apt-get update && sudo apt-get install gitlab-ce | ||
+ | </ | ||
+ | |||
+ | ==== User Config ==== | ||
+ | check git config | ||
+ | < | ||
+ | git config --list | ||
+ | </ | ||
+ | |||
+ | cache the password for a month | ||
+ | < | ||
+ | git config --global credential.helper 'cache --timeout=2628000' | ||
+ | </ | ||
+ | |||
+ | ===== GitFlow | ||
{{ : | {{ : | ||
- | === Branches principales === | + | ==== Branches principales |
Origin détient deux branches principales //infinies dans le temps//: | Origin détient deux branches principales //infinies dans le temps//: | ||
* master | * master | ||
Ligne 58: | Ligne 76: | ||
Par définition, | Par définition, | ||
- | === Branches secondaires === | + | ==== Branches secondaires |
Le modèle **GitFLow** intègre des branches secondaires afin d' | Le modèle **GitFLow** intègre des branches secondaires afin d' | ||
Ligne 65: | Ligne 83: | ||
* Hotfix | * Hotfix | ||
- | === Feature === | + | ==== Feature |
* Branche source: **develop** | * Branche source: **develop** | ||
* Branche cible: **develop** | * Branche cible: **develop** | ||
Ligne 72: | Ligne 90: | ||
La branche **feature** est utilisée pour développer des nouvelles fonctionnalités destinées à une future // | La branche **feature** est utilisée pour développer des nouvelles fonctionnalités destinées à une future // | ||
- | == Créer une branche feature == | + | === Créer une branche feature |
< | < | ||
git checkout -b myfeature develop | git checkout -b myfeature develop | ||
Ligne 78: | Ligne 96: | ||
</ | </ | ||
- | == Incorporer une branche feature dans develop == | + | === Incorporer une branche feature dans develop |
< | < | ||
git checkout develop | git checkout develop | ||
Ligne 96: | Ligne 114: | ||
{{ : | {{ : | ||
- | === Release === | + | ==== Release |
* Branche source: **develop** | * Branche source: **develop** | ||
* Branche cible: **develop** et **master** | * Branche cible: **develop** et **master** | ||
Ligne 107: | Ligne 125: | ||
C'est au moment de la création de la branche **release** que la //release// en cours se voit assignée un numéro de version. | C'est au moment de la création de la branche **release** que la //release// en cours se voit assignée un numéro de version. | ||
- | == Créer une branche release == | + | === Créer une branche release |
< | < | ||
git checkout -b release-1.2 develop | git checkout -b release-1.2 develop | ||
Ligne 124: | Ligne 142: | ||
La branche **release** peut exister un moment jusqu' | La branche **release** peut exister un moment jusqu' | ||
- | == Incorporer une branche release == | + | === Incorporer une branche release |
La branche est //merge// dans **master** ensuite ce dernier //commit// sur **master** est //taggé//. Enfin les changements faits sur la **release** (corrections de bugs) doivent être //merge// sur **develop**. | La branche est //merge// dans **master** ensuite ce dernier //commit// sur **master** est //taggé//. Enfin les changements faits sur la **release** (corrections de bugs) doivent être //merge// sur **develop**. | ||
Ligne 148: | Ligne 166: | ||
</ | </ | ||
- | === Hotfix === | + | ==== Hotfix |
* Branche source: **master** | * Branche source: **master** | ||
* Branche cible: **develop** et **master** | * Branche cible: **develop** et **master** | ||
Ligne 157: | Ligne 175: | ||
Les branches **hotfix** aident à la préparation pour la mise en prod. Ellles découlent de la nécessité d’agir immédiatement sur un état non souhaité d’une version en production. Ansi, le développement peut continuer pendant qu'une autre personne peut préparer une correction rapide de la prod. | Les branches **hotfix** aident à la préparation pour la mise en prod. Ellles découlent de la nécessité d’agir immédiatement sur un état non souhaité d’une version en production. Ansi, le développement peut continuer pendant qu'une autre personne peut préparer une correction rapide de la prod. | ||
- | == Créer une branche hotfix == | + | === Créer une branche hotfix |
Créer à partir de la branche **master**, afin de corriger un bug sur la prod mais les changements sur **develop** sont instables. | Créer à partir de la branche **master**, afin de corriger un bug sur la prod mais les changements sur **develop** sont instables. | ||
Ligne 175: | Ligne 193: | ||
</ | </ | ||
- | == Incorporer une branche hotfix == | + | === Incorporer une branche hotfix |
Quand elle est finit la branche **hotfix** doit être //merge// dans **master** mais aussi dans **develop**. On s' | Quand elle est finit la branche **hotfix** doit être //merge// dans **master** mais aussi dans **develop**. On s' | ||
Ligne 201: | Ligne 219: | ||
Une seule exception peut être faite. Si une //release// est en cours, soit une branche **release** encore ouverte. Les changements de **hotfix** doivent être //merge// dans **release** au lieu de **develop**. Les changements seront //mergés// dans **develop** au moment de l' | Une seule exception peut être faite. Si une //release// est en cours, soit une branche **release** encore ouverte. Les changements de **hotfix** doivent être //merge// dans **release** au lieu de **develop**. Les changements seront //mergés// dans **develop** au moment de l' | ||
- | ==== Commit message ==== | + | ===== Commit message |
[[https:// | [[https:// | ||
- Séparer le sujet du corps par une ligne | - Séparer le sujet du corps par une ligne |