-----Message d'origine-----
De : spip-zone-bounces@rezo.net
[mailto:spip-zone-bounces@rezo.net] De la part de RealET
Envoyé : lundi 24 décembre 2007 09:47
À : spip-zone@rezo.net
Objet : Re: [SPIP Zone] r17662
-/_plugins_/_test_/login_logout/inc/plugin_globales_lib.php
* paladin@quesaco.org tapuscrivait, le
24/12/2007 06:03:
> Author: paladin@quesaco.org
> Date: Mon Dec 24 06:03:37 2007
> New Revision: 17662
>
> Log:
> proteger le nom de la fonction de svn commit
Est-ce que tu pourrais expliquer comment et pourquoi ça marche ?
Actuellement, SPIP utilise une lecture de .svn/entries pour
déterminer le numéro de version affiché en bas du site.
Dans le cas d'une svn, mais ca nécessite de faire un 'Update' à la place
d'un 'Export' avec tout un tas de fichiers/dossiers .svn inutiles dans bien
des cas. D'où ma recherche en me basant plus sur un 'Export' et des
mots-clés existants (propriétés) à insérer dans les scripts, c'est à dire
sans les fichiers ressources de .svn.
La solution proposée, qui n'est peut-être pas la meilleure, consiste dans un
premier temps à insérer l'attribut svn dans un tag de plugin.xml. Mais c'est
incomplet, car ça ne tient pas compte des autres fichiers (vu le système
atomique de svn qui permet d'avoir le numéro de révision par fichier, et non
globalement pour le pack).
La recherche est étendue dans mon dernier commit. En gros, la fonction va
chercher dans tous les fichiers ellisibles du plugin (où il peut trouver le
mot-clé 'LastChangedRevision' et en extraire la valeur max).
Du coup, le tag xml de plugin.xml est devenu presque inutile.
Il y a peut-être plus simple ?
Et la génération des ZIP met quant à elle un svn.revision à
la racine du site.
D'après ce que je comprends, tu as mis en place un mécanisme
qui permet de faire mettre par Subversion le n° de révision
dans le code source.
Comment ce n° est récupéré quand on fait svn up ?
Il est donné par le serveur SVN.
Comment cette variable n'est pas écrasée dans le code source
quand on fait svn co ?
C'est juste un mot-clé. Tu mets $LastChangedRevision:$ dans ton script, si
besoin tu appliques les propriétés du fichier (clic droit, propriétés,
subversion sous windows, ou ajout des propriétés sous console) et tu
envoies. SVN se charge du reste et met à jour le numéro tout seul. Donc la
variable est forcément écrasée.
Mais je n'ai peut-être pas bien compris la question ?