web-dev-qa-db-fra.com

Puis-je faire un plugin directement depuis un dossier de plugins dans une installation utilisant le SVN Trunk

J'ai installé plusieurs hôtes virtuels, trois d'entre eux extraient des fichiers via SVN en cas de besoin (bien que seul le dossier de la corbeille ait besoin ), utiliser SVN pour d'autres versions facilite la création de correctifs, ou remplacement de fichier facile si je pirater un fichier de base.

enter image description here

Ma question est de savoir si je peux archiver un plugin directement à l'intérieur du répertoire plugins?

Prenez donc ce plugin situé dans wp-content/plugins/post-ui-tabs par exemple.

enter image description here

Puis-je utiliser ce dossier pour héberger mon plugin WordPress.org ou son dossier doit-il imiter la structure de répertoires du SVN, par exemple ..

  • brances /
  • mots clés/
  • tronc/

UPDATE:

Merci pour les commentaires les amis! Tous sont utiles pour comprendre la structure de répertoires locale et distante.

J'ai maintenant mon plugin dans le dépôt, voir ici.
Publier des onglets d'interface utilisateur

La réponse directe à ma question était Oui, je peux faire des commits directement à partir de mon dossier de plugins. J'ai simplement une structure locale typique de wp-content/plugins/myplugin qui n’est qu’une extraction de http://svn.wp-plugins.org/myplugin/trunk. Je commets directement dans trunk, puis quand je veux pousser une nouvelle version, je branche sur une balise (le faire directement dans Tortoise) et met à jour la balise stable readme.txt pour référencer la nouvelle balise, c'est-à-dire. l'opération crée le http://svn.wp-plugins.org/myplugin/tag/VER distant avec tous mes fichiers et le rend disponible pour les utilisations, tandis que ma copie de travail locale reste sur le coffre (je bloguerai à ce sujet ultérieurement, lorsque j'aurai plus de pratique).

Plus facile alors j'ai pensé! ... merci pour tous les conseils les gars .. toutes les précieuses informations, Andy j'ai senti que votre réponse vous avait le plus aidé, alors je vous donne l'acceptation, tout le monde j'apprécie toujours vraiment votre aide, malheureusement Je ne peux accepter qu'une seule réponse ... mais merci à tous.

4
t31os

Je lance un checkout Wordpress de tronc, une branche ou un tag. De cette façon, je peux facilement changer de version de WordPress:

svn sw http://svn.automattic.com/wordpress/trunk
svn sw http://svn.automattic.com/wordpress/tags/3.1

Dans wp-content/plugins j'ai une commande de coffre pour chacun de mes plugins:

cd wp-content/plugins
svn co http://plugins.svn.wordpress.org/stats/trunk/ stats

Je fais mon travail sur le plugin stats (mettre à jour le changelog dans le readme), puis je commets directement à partir de là:

emacs stats.php readme.txt
svn di stats.php readme.txt
svn ci stats.php readme.txt -m "stats: fixed issue with SSL"

Quand il est temps de pousser une nouvelle version, je copie depuis le tronc vers la nouvelle balise:

svn cp http://plugins.svn.wordpress.org/stats/trunk/ http://plugins.svn.wordpress.org/stats/tags/4.2.1/ -m "stats: tag 4.2.1"

Enfin, je bosse la balise stable dans le fichier Lisez-moi et la mets dans trunk.

emacs readme.txt
svn di readme.txt
svn ci readme.txt -m "stats: bump stable tag to 4.2.1"

Je fais tout cela sous Linux ou Mac. Dans mon ancienne vie en tant qu'utilisateur Windows, je devais SSH (PuTTY) dans une machine Linux ou (en dernier ressort) virtualisait Linux.

3
Andy

Tout d'abord, je suis également débutant en SVN. Je suis content quand ça marche;)

Je ne suis pas tout à fait sûr de bien comprendre votre question. Vous avez extrait la malle WordPress et à l'intérieur de cette copie de travail, vous voulez extraire un plugin du répertoire de plugins WordPress?

Eh bien, je ne sais pas si cela va fonctionner - Mais vous pouvez stocker votre répertoire wp-config.php et wp-content en dehors de votre répertoire WordPress, comme expliqué par Otto dans son article .

Par exemple

Racine du document: /var/www/

 site1 /
 wp-config.php 
 wp-content /
 pluginA/(svn-external vers le dépôt de plugin WordPress) 
 pluginB/( svn-external vers le dépôt de plugin WordPress) 
 pluginC/(copie locale) 
 wp-trunk/((svn-external vers le dépôt de dossier WordPress) 
 wp-31/(svn-external vers repo de branches WordPress) 

De cette façon, vous pouvez accéder à plusieurs versions de WordPress et à tous vos plugins souhaités avec svn-externals. Le trou site1 peut alors également être stocké dans votre propre site1 svn repo, de sorte que votre ami n'a qu'à extraire ce référentiel de votre serveur svn.

2
rofflox

Ma question est de savoir si je peux archiver un plugin directement à l'intérieur du répertoire plugins?

Par "checkin", voulez-vous dire mettre à jour le plugin sur wp.org (svn commit) ou télécharger le plugin à partir de wp.org (svn checkout)?

Les plugins sur wp.org nécessitent la structure trunkbranchestags traditionnelle.

Si vous souhaitez travailler sur un plug-in svn checkout dans wp core, vous pouvez extraire uniquement le dossier trunk:

svn checkout http://plugins.svn.wordpress.org/your-plugin-name/trunk/ wp-content/plugins/your-plugin-name/
2
scribu

Disclaimer - Je suis aussi débutant avec SVN.

Est-ce possible?

Devrait être. J'utilise une configuration similaire, juste avec WP et non extrait du référentiel officiel.

Les externals sont-ils ce que je recherche?

Nan. Les externes sont des liens entre les référentiels. WP le référentiel de plug-in les ignore pour les téléchargements de packages (ils sont donc inutiles). Et si j'ai bien compris, vous n'aurez pas besoin de votre plugin dans plusieurs référentiels.

Puis-je avoir un dépôt de plugin dans un dossier SVN?

Les dossiers sont "SVNed" individuellement. Chaque dossier a ses propres méta-informations SVN et les sous-dossiers ne sont pas obligés d'appartenir à un SVN avec racine. Soyez juste attentif afin que de nouveaux fichiers soient ajoutés au référentiel, ils devraient être et tels.

ou le dossier de mon plugin doit-il imiter la structure de répertoire du SVN, par exemple ..

Nan. Vous venez de valider votre dossier dans le coffre, puis vous taguez/branchez le coffre en version marquée lorsque vous avez une nouvelle version. C'est bien sûr si vous n'avez pas besoin de conserver l'ancienne version du plugin sur un ordinateur local.

J'aimerais que ce soit un simple cas de lecture du manuel, mais SVN semble plus destiné aux utilisateurs autres que Windows, et j'ai du mal à trouver des informations pertinentes sur tout ce qui n'est pas clair.

J'ai récemment posé cette question Tous les guides d'utilisation de WP SVN avec IDE clients? et des réponses et des piquer Le meilleur type de manuel que j’ai trouvé est la documentation fournie avec TortoiseSVN. C’est pour Windows et tout particulièrement pour les personnes qui ne sont pas très habituées aux commandes SVN en ligne de commande.

2
Rarst