Objectif : mettre à jour l’index archivelist.txt
Environnement : commandes svn via terminal
Si vous désirez voir publié dans la zone [1] la version paquet de votre contribution, il faut ajouter la ligne nécessaire dans le fichier archivelist.txt.
Ce fichier se trouve à la racine de la zone. Vous pouvez consulter archivelist.txt via votre navigateur préféré sur https://zone.spip.org/trac/spip-zone/browser.
La mise à jour de ce fichier nécessite l’emploi de svn, soit en ligne de commande (terminal), soit via une interface graphique.
C’est la mise en ligne via le terminal qui est illustrée ici.
Récupérer archivelist.txt
Il n’est pas nécessaire de récupérer le dépôt entier de plug-ins sur la zone pour mettre à jour le fichier archivelist.txt. Bien au contraire ! Pour vous en convaincre : consultez ce billet sur spip-zone.
Créez d’abord un répertoire d’accueil (répertoire de travail) sur votre disque dur :
cd Temp
mkdir trac
Allez dans ce répertoire :
cd trac
Récupérez les fichiers mais pas les répertoires présents à la racine de la zone :
svn checkout -N svn://zone.spip.org/spip-zone/ .
Notez le point final pour indiquer le répertoire courant en tant que répertoire de travail. L’option -N ou —non-recursive permet de récupérer uniquement le contenu du répertoire cible et pas celui de ses sous-dossiers.
Lister le contenu de votre répertoire de travail :
ls -las
Il doit ressembler à ceci :
total 48
0 drwxr-xr-x 5 me staff 170 10 aoû 12:00 .
0 drwxr-xr-x 44 me staff 1496 10 aoû 12:01 ..
0 drwxr-xr-x 7 me staff 238 10 aoû 11:48 .svn
8 -rw-r--r-- 1 me staff 1423 10 aoû 11:48 _REGLES_DE_COMMIT
40 -rw-r--r-- 1 me staff 19417 10 aoû 12:00 archivelist.txt
Le répertoire .svn ne doit pas être modifié.
Consultez le fichier _REGLES_DE_COMMIT pour précision.
Éditez le fichier archivelist.txt et effectuez votre modification. La plupart du temps, ce sera pour ajouter une contribution en suivant le guide présent en commentaire en début du fichier archivelist.txt.
Vous noterez au passage que les contributions sont classées par ordre alphabétique.
Après modification et enregistrement, quittez votre éditeur de texte et vérifiez le tout par la commande :
svn st
Logiquement, le résultat est :
M archivelist.txt
Le M indique que le fichier archivelist.txt a été modifié.
Si vous doutez de la modification apportée, vous pouvez lancer un diff pour comparer la version précédente et votre version modifiée :
svn diff
donne par exemple :
Index: archivelist.txt
===============================
--- archivelist.txt (révision 30781)
+++ archivelist.txt (copie de travail)
@@ -154,6 +154,7 @@
_plugins_/exclure_secteur/;exclure_secteur;
_plugins_/exif/;exif
+_plugins_/export_auteurs;export_auteurs
_plugins_/export_csv;export_csv
_plugins_/export_odt;export_odt_200_dev
tags/export_odt_192
La ligne qui commence par un signe plus (’+’) précise ici que cette ligne a été ajoutée.
Comme il est précisé plus haut, les contributions sont classées par ordre alphabétique. Dans l’exemple ci-dessus, export_odt est immédiatement suivi de export_odt_192. Le premier est dans le répertoire _plugins_, le second dans tags. Le fait de classer ainsi les contributions permet d’éviter les doublons.
Pour valider la modification sur le serveur de dépôt, il faut maintenant lancer la publication par une commande svn du style :
svn commit -m "Ajout du plugin export_auteurs"
L’option -m permet de loger votre action. De la décrire. En règle générale, complétez toujours un commit d’une description de votre action.
Le résultat de ce dernier appel donne quelque chose du genre :
Envoi archivelist.txt
Transmission des données .
Révision 30783 propagée.
Pour en savoir sur la commande svn entrez sous terminal :
svn help
Voir si besoin le site officiel de subversion/svn : http://subversion.tigris.org/
Gestion des erreurs
Il arrive parfois que le serveur réponde par un message du style :
svn: Échec de la propagation (commit), détails :
svn: Impossible de se connecter à l'hôte 'zone.spip.org': Connection refused
Ne pas s’inquiéter. Ça arrive parfois. Le serveur n’est pas disponible pour le moment. Re-essayez plus tard.
P.S : sour tortoise-svn sous windows, choisir un répertoire vide puis choisir « only file children » comme le montre la capture d’écran ci dessous
Discussions par date d’activité
6 discussions
Bonjour,
Super explications, surtout pour moi qui travaille avec Git.
Juste à préciser que c’est le fichier ’archivelist_externals.txt’ qui est concerné. dans ce cas car mon source est sur GitHub.
L’installation de subversion sur ma machine et hop c’est à jour.
Merci pour ce tuto toujours d’actualité.
Amitiés Jean.
Répondre à ce message
Un grand merci pour ce tuto simple et efficace.
Répondre à ce message
Alors qu’il est sensé expliquer comment demander le zipage d’un plugin, cet article explique en fait comment se servir de SVN !!!
Serait il possible d’y ajouter l’information cruciale à savoir : Quel est donc le format de chaque ligne de archivelist ?
heu... non.
cet article est là pour (comme l’indique son titre explicitement) « Publier archivelist.txt via svn/terminal » et non pour « expliquer comment demander le zipage d’un plugin ».
... et pour répondre à la question :
le formatage de chaque ligne décrivant un paquet à faire (autrement dit : comment ajouter un plugin à archivelist) est détaillé dans les premières ligne (commentaires) du-dit fichier archivelist http://zone.spip.org/trac/spip-zone/browser/archivelist.txt#L11
Répondre à ce message
L’option -N de SVN est désormais obsolète, il faut utiliser :
svn co —depth=files svn ://zone.spip.org/spip-zone/
Répondre à ce message
Excellent !
Alors la petite difficulté, je suis sous Mac OS X, et je n’ai pas l’habitude du terminal et de ce fait, le chemin vers mon répertoire, je ne le connaît pas forcément...
Donc, pour mémo pour les MacUsers pas habitués, le chemin vers le dossier « Documents » est le suivant :
/Users/nom_de_l_utilisateur/Documents/
Le bureau :
/Users/nom_de_l_utilisateur/Desktop/
Merci.
J’avoue qu’après avoir essayé tous les outils clients SVN gratuits disponibles sous Mac, je n’utilise plus que le mode Terminal, bien plus rapide, ne plante jamais. Et finalement, c’est juste quelques commandes à apprendre pour régler 99 % des besoins.
Perso, j’utilise bash ou zsh avec un prompt sur deux lignes qui m’indique où je me trouve sans avoir à taper la commande pwd.
C’est super pratique.
envoie directement dans le dossier Document du compte courant.
Oui, c’est sûr que le Terminal doit être sympa... Mais là, par exemple, depuis svnX, j’avais pu exporter archivelist dans mon répertoire spécifique pour lui. Je vais dans le terminal, vu que je n’arrive pas faire un up. Je suis pas à pas ton article (sans soucis particulier), mais au moment de recueillir archivelist, il me dit pas possible car y en a déjà un...
Donc, ouais, faudrait peut-être que j’apprenne à l’utiliser. Mais maintenant que je me suis familiarisé avec svnX, je vais continuer un peu encore...
a titre perso
1) n’aimant pas taper des lignes de terminal
2) n’aimant pas svnx car trop lent
j’ai pris le logiciel « Versions » pour Mac. Ce n’est pas une logiciel libre, même pas un gratuit (shareware) mais je le trouve top. En plus ca m’a permis d’avoir mon serveur en local sans me prendre la tete. A part pour juste faire un co à la racine où je passe encore par le terminal.
Répondre à ce message
Y’a sérieusement pas plus simple pour commander un zipage ?
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |