GitHotfix » Historique » Version 48
Version 47 (Daniel Dehennin, 08/12/2016 10:24) → Version 48/85 (Daniel Dehennin, 08/12/2016 10:25)
{{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@* :
<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 (amené à disparaître) (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
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@* :
<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 (amené à disparaître) (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