Project

General

Profile

GitHotfix » History » Version 46

Version 45 (Daniel Dehennin, 12/08/2016 10:16 AM) → Version 46/85 (Daniel Dehennin, 12/08/2016 10:16 AM)

{{toc}}

h1. Préparer un correctif pour EOLE 2.4 ou EOLE 2.5

*RAPPEL* : Il ne faut jamais fusionner une branche d’une version supérieure à une version inférieure, par exemple :

* *NE PAS FAIRE*
<pre>
moi@work:~/src/$PAQUET (2.4.0/master)$ git merge master
</pre>
* *NE PAS FAIRE*
<pre>
moi@work:~/src/$PAQUET (2.4.0/master)$ git merge release/2.4.1
</pre>
* *NE PAS FAIRE*
<pre>
moi@work:~/src/$PAQUET (2.4.0/master)$ git merge 2.4.2/master
</pre>
* *NE PAS FAIRE*
<pre>
moi@work:~/src/$PAQUET (2.4.0/master)$ git merge release/2.4.2
</pre>
* *NE PAS FAIRE*
<pre>
moi@work:~/src/$PAQUET (2.4.0/master)$ git merge 2.4.2/42-fix-machin-truc
</pre>

h2. Principe de base

* *@X/master@* : branche d’intégration de code pour la version *X*
* *@dist/eole/X/master@* : branche de packaging pour la version EOLE *X*

On pourrait pousser la distinction pour les branches de codes :

* 2.4.0/master: branche d’intégration des hotfix pour 2.4.0, intégrée dans dist/eole/2.4.0/master pour créer un paquet, ce qui donne :

<pre>
moi@work:~/src/$PAQUET (2.4.0/master)$ git package 2.4.0
moi@work:~/src/$PAQUET (2.4.0/master)$ git package -b -d eole-2.4.0/proposed-updates 2.4.0
</pre>

* 2.4.1/master: branche d’intégration des hotfix pour 2.4.1, intégrée dans dist/eole/2.4.1/master pour créer un paquet, ce qui donne :

<pre>
moi@work:~/src/$PAQUET (2.4.1/master)$ git package 2.4.1
moi@work:~/src/$PAQUET (2.4.1/master)$ git package -b -d eole-2.4.1/proposed-updates 2.4.1
</pre>

* *2.4.1/42-fix-machin-bidule* : branche contenant le correctif pour le bug *@machin bidule@* (numéro redmine \#42) apparu sur 2.4.1.

Cette branche sera intégrée à 2.4.1/master, 2.4.2/master et toutes les autres 2.4.X/master si le problème « machin bidule » y est présent, jusqu’à la branche de développement.

Cela pourrait être représenté de la façon suivante, les *@o@* sont des commits et les *@M@* sont des *@merge commits@* : commits@* :

<pre>
o-o-o-o-o-o-o-o-o-o-o-o---M <- master
\ \ \ /
\ \ o-o-o-o-M / <- 2.4.2/master
\ \ / /
\ \ o-o---+ <- 2.4.1/42-fix-machin-bidule (amene disparatre)
\ \ / \
\ o-o-o-o-M <- 2.4.1/master
\
\
o-o-o-o-o-o-o-o-o <- 2.4.0/master
</pre>

h2. EOLE 2.4

h3. EOLE 2.4.0

<pre>
moi@work:~/src/$PAQUET (master)$ git checkout 2.4.0/master
moi@work:~/src/$PAQUET (2.4.0/master)$ git package 2.4.0
moi@work:~/src/$PAQUET (2.4.0/master)$ git package -b -d eole-2.4.0/proposed-updates 2.4.0
</pre>

h3. EOLE 2.4.1

<pre>
moi@work:~/src/$PAQUET (master)$ git checkout 2.4.1/master
moi@work:~/src/$PAQUET (2.4.1/master)$ git package 2.4.1
moi@work:~/src/$PAQUET (2.4.1/master)$ git package -b -d eole-2.4.1/proposed-updates 2.4.1
</pre>

h3. EOLE 2.4.2

Les branches *2.4.2/master* et *dist/eole/2.4.2/master* ayant été créées à la demande, les projets n'ayant pas nécessité de modifications spécifiques pour la version 2.4.2 ne possèdent pas ces branches.

<pre>
moi@work:~/src/$PAQUET (master)$ git checkout 2.4.2/master
moi@work:~/src/$PAQUET (2.4.2/master)$ git package 2.4.2
moi@work:~/src/$PAQUET (2.4.2/master)$ git package -b -d eole-2.4.2/proposed-updates 2.4.2
</pre>

h2. EOLE 2.5

h3. EOLE 2.5.0

Seuls les paquets communs et ceux utilisés par les modules annoncés comme stables (Zéphir et Seshat) possèdent les branches *2.5.0/master* et *dist/eole/2.5.0/master*.

<pre>
moi@work:~/src/$PAQUET (master)$ git checkout 2.5.0/master
moi@work:~/src/$PAQUET (2.5.0/master)$ git package 2.5.0
moi@work:~/src/$PAQUET (2.5.0/master)$ git package -b -d eole-2.5.0/proposed-updates 2.5.0
</pre>

h3. EOLE 2.5.1

Les branche *2.5.1/master* et *dist/eole/2.5.1/master* sont utilisées pour la 2.5.1

<pre>
moi@work:~/src/$PAQUET (master)$ git checkout 2.5.1/master
moi@work:~/src/$PAQUET (2.5.1/master)$ git package 2.5.1
moi@work:~/src/$PAQUET (2.5.1/master)$ git package -b -d eole-2.5.1/proposed-updates 2.5.1
</pre>

h3. EOLE 2.5.2

Les branche *2.5.2/master* et *dist/eole/2.5.2/master* sont utilisées pour la 2.5.2

<pre>
moi@work:~/src/$PAQUET (master)$ git checkout 2.5.2/master
moi@work:~/src/$PAQUET (2.5.2/master)$ git package 2.5.2
moi@work:~/src/$PAQUET (2.5.2/master)$ git package -b -d eole-2.5.2/proposed-updates 2.5.2
</pre>

|La branche de packaging *dist/eole/2.5/master* ne doit plus être utilisée.|

h2. EOLE 2.6

h3. EOLE 2.6.0

Les branche *2.6.0/master* et *dist/eole/2.6.0/master* sont utilisées pour la 2.6.0

<pre>
moi@work:~/src/$PAQUET (master)$ git checkout 2.6.0/master
moi@work:~/src/$PAQUET (2.6.0/master)$ git package 2.6.0
moi@work:~/src/$PAQUET (2.6.0/master)$ git package -b -d eole-2.6.0/proposed-updates 2.6.0
</pre>

h3. EOLE 2.6.1 (unstable)

Actuellement (*octobre 2016*), les branches *master* et *dist/eole/2.6.1/master* sont utilisées pour la 2.6.1

<pre>
moi@work:~/src/$PAQUET (master)$ git package 2.6.1
moi@work:~/src/$PAQUET (master)$ git package -b -d eole-2.6/unstable 2.6.1
</pre>

h2. ENVOLE 4

Les dépôts envole4 sont utilisés pour les versions *EOLE 2.4.2* et *EOLE 2.5.1*

h3. Paquets de dév

Distribution : envole-4-unstable

h3. Paquets candidats

Distribution : envole-4-testing

h2. ENVOLE 5

Les dépôts envole5 sont utilisés à partir de la version *EOLE 2.5.2*.

Certains des logiciels fournis dans cette version sont incompatibles avec les versions d'apache/php de la distribution _Precise_ (2.4).

A terme les logiciels seront tous adaptés pour utiliser project:eole-db.

h3. Paquets de dév

Distribution : envole-5-unstable

h3. Paquets candidats

Distribution : envole-5-testing