Carnet Wiki

Dossiers d’un plugin : trunk / branches / tags

Version 3 — Avril 2017 JLuc

Voir aussi
-  Poser un tag d’un plugin
-  Commandes svn de base pour la zone

[EDIT] : ancienne partie de la zone facile

Introduction
-   le trunk c’est le développement le plus avancé. En pratique c’est quasiment toujours la version pour SPIP3.
-  les branches sont les autres versions : versions antérieures mais toujours maintenues, avec des mises à jours, corrections de bugs, et en pratique des nouvelles fonctionnalités. En pratique la plupart du temps ce sont les version toujours maintenues et développées pour spip2.
-  les tags, c’est une copie instantannée d’une version. C’est destiné à ne plus jamais bouger. On ne commite jamais sur une version « tag »

En pratique , On ramène au fonctionnement TortoiseSVN ( ou RabbitSVN pour Linux )  :
- soit par l’explorateur intégré
-  
soit par les tags sont créés exactement comme les branches , mais contrairement aux branches , ils ne sont jamais modifiés ensuite . commandes détaillées

Création d’une branche

Voir pour l’utilisation du processus : l’explication d’usages des plugins

cedric préconise :

svn mv corbeille corbeille_trunk
svn commit 
mkdir corbeille
svn add corbeille
svn mv corbeille_trunk corbeille/trunk
svn commit

Rastapopoulos précise :

// Sauver le dossier actuel en gardant l'historique
svn move monplugin monplugin_tmp


// Créer la nouvelle structure de dossier et la commiter
mkdir monplugin
mkdir monplugin/branches
svn add monplugin
svn commit monplugin


// Si on veut tout péter : sauver l'état actuel dans une branche du nom de la version
svn cp monplugin_tmp monplugin/branches/1.5.x


// Déplacer vraiment la sauvegarde dans le trunk cad la branche de dev
svn move monplugin_tmp monplugin/trunk


svn commit monplugin

b_b rédige un pense bête ainsi : http://www.weblog.eliaz.fr/article113.html

Joseph, qui se sert de TortoiseSVN indique avec l’appui de Cerdic :
-  renommer le répertoire monplugin en monplugin_trunk
-  commiter (pour pouvoir plus loin recréer un répertoire du même nom)
-  créer le répertoire monplugin
-  renommer le répertoire monplugin_trunk en monplugin/trunk

Marcimat explique en détail comment pour sa part, pour partir d’un plugin existant X, il a fait :

svn mv X X_tmp
svn commit -m "prépa trunk/branches" X X_tmp


svn mkdir X
svn mkdir X/branches
svn cp X_tmp X/trunk
svn mv X_tmp X/branches/v1
svn commit -m "trunk/branches" X X_tmp

Structure élémentaire normative conseillée

En résumé, sur chaque sous-répertoire de la zone (consultez : ces sous-répertoires de http://zone.spip.org/trac/spip-zone/browser/ )
Le schema normatif à utiliser est donc le suivant :

<blockquote class="spip">

spip-zone/_plugins_/ monplugin / {{}}
spip-zone/_plugins_/ monplugin / branches : pour des versions « stables » à ne plus modifier
spip-zone/_plugins_/ monplugin / branches/version_0 :
spip-zone/_plugins_/ monplugin / branches/version_2 :
spip-zone/_plugins_/ monplugin / branches/version1 :
spip-zone/_plugins_/ monplugin / tags
spip-zone/_plugins_/ monplugin / trunk : normalement la version principale
choisir pour /selon regles definies dans REGLES_COMMIT/pour la version « utile  »

spip-zone/_plugins _/ monplugin /
</
quote > utile" [1]
spip-zone/_plugins_/ monplugin / {{}}

</blockquote>

* se créer un « point d’accroche en local » par un import
y placer sa structure (celle correspondant en dessous de ....
/trunk/ ??Rappel  :
-  
éliminez )
_ toujours penser à</u > éliminer les scories (.bak , . ) diff , logs bak et code de debuging autres ) avant de transférer
-  
commentez les commits
_
< u>toujours penser à</u > commenter le commit (mettre un message avec l’option - m ) ..