De temps en temps, je mets mes plugins WordPress sur le dépôt officiel mais j’utilise assez rarement subversion
– connu également sous le doux nom svn
– et j’ai tendance à en oublier la syntaxe.
Voici donc un petit aide-mémoire pour l’utilisation de subversion avec les plugins WordPress.
Ajouter un plugin sur le dépôt officiel WordPress
1. On crée un répertoire local sur notre machine pour y accueillir notre projet:
mkdir my-local-dir
2. On synchronise le dépôt avec un check-out en donnant le slug du plugin:
svn co https://plugins.svn.wordpress.org/your-plugin-name my-local-dir
Code language: JavaScript (javascript)
Résultat:
> A my-local-dir/trunk
> A my-local-dir/branches
> A my-local-dir/tags
> Checked out revision 1135625.
Subversion vient d’ajouter ( “A” signifie “add” ) tous les répertoires du dépôt central à notre copie locale.
3. On copie tous les fichiers du plugin dans le répertoire trunk/
:
cd my-local-dir/
my-local-dir/$ cp ~/my-plugin.php trunk/my-plugin.php
my-local-dir/$ cp ~/readme.txt trunk/readme.txt
Code language: JavaScript (javascript)
4. On prépare l’ajout des fichiers du plugin au dépôt central:
my-local-dir/$ svn add trunk/* assets/*
> A trunk/my-plugin.php
> A trunk/readme.txt
Code language: PHP (php)
5. On donne un message à notre check-in et on envoie les fichiers au dépôt central :
my-local-dir/$ svn ci -m 'Adding first version of my plugin'
> Adding trunk/my-plugin.php
> Adding trunk/readme.txt
> Transmitting file data .
> Committed revision 1135626.
Code language: JavaScript (javascript)
Voilà, vous venez d’ajouter votre plugin au dépôt officiel de WordPress !
Supprimer un fichier sur le dépôt
Pour supprimer un fichier sur le dépôt, il faut supprimer le fichier avec svn delete
puis commettre les changements avec svn commit
. C’est lors du commit que le fichier est supprimé du dépôt :
svn delete myfile
> D myfile
svn commit -m "Deleted file 'myfile'."
> Deleting myfile
> Transmitting file data .
> Committed revision 1135629.
Code language: JavaScript (javascript)
Mettre à jour un plugin sur le dépôt
Une fois le plugin hébergé chez WordPress, vous serez sûrement amené à le mettre à jour.
1. On commence par vérifier que notre copie locale est à jour avec la copie qui se trouve chez WordPress:
cd my-local-dir/
my-local-dir/$ svn up
Résultat :
> At revision 1135626.
Nous sommes à jour. S’il y avait eu des changements, subversion vous aurait averti pour les fusionner avec votre copie locale.
2. On édite les fichiers du plugin, on n’oublie pas de mettre à jour readme.txt
3. On vérifie ce qui a changé entre notre copie locale et celle du dépôt :
my-local-dir/$ svn stat
Résultat:
> M trunk/my-plugin.php
Le fichier a bien été modifié ( “M” for “modified” ).
4. On envoie tout ça sur le serveur avec un check-in :
my-local-dir/$ svn ci -m "fancy new feature: now you can foo *and* bar at the same time"
Code language: JavaScript (javascript)
Résultat:
> Sending trunk/my-plugin.php
> Transmitting file data .
> Committed revision 113562.
5. On taggue maintenant la version du plugin que l’on vient de sortir. Cela permet aux utilisateurs (ou au développeurs) de voir ce qui a changé entre deux versions ou de revenir à la version précédente si besoin.
trunk/readme.txt
On copie le contenu de trunk/ dans le répertoire tags/ suivi du numéro de la version du plugin :
my-local-dir/$ svn cp trunk tags/2.0
Résultat:
> A tags/2.0
On ajoute maintenant la nouvelle version sur le serveur, avec un petit message qui annonce la nouvelle version:
my-local-dir/$ svn ci -m "tagging version 2.0"
Code language: JavaScript (javascript)
Résultat :
> Adding tags/2.0
> Adding tags/2.0/my-plugin.php
> Adding tags/2.0/readme.txt
> Committed revision 1135638.
Et voilà, votre plugin WordPress de trouve désormais sur le dépôt central officiel de WordPress!
Vous voulez un site WordPress ou WooCommerce qui soit à la fois rapide et performant? Vous êtes au bon endroit.
Article intéressant, mais il faudrait aussi expliquer comment ajouter des nouveaux fichiers dans le plugin lorsque l’on souhaite faire un update.
Bonjour,
Cela est couvert dans la section “Mettre à jour un plugin sur le dépôt” (ou alors j’ai mal compris votre question).