Le moyen le plus simple de créer un patch pour la soumission à WordPress Core?


13

J'ai soumis quelques correctifs pour le noyau WordPress sur Trac (dont un a été utilisé) mais chaque fois que je pense à le faire, je grince des dents parce que ma configuration pour le faire est incroyablement fastidieuse.

Quelqu'un peut-il détailler les étapes nécessaires pour soumettre un correctif pour le noyau, puis la meilleure façon de rationaliser le processus afin qu'il ne soit pas si fastidieux? Je travaille actuellement sur Mac OS X et PhpStorm mais je pense qu'un script shell pourrait être plus simple? Ou peut-être un script PHP qui fait tout le travail par cœur?

L'un des problèmes est que je ne comprends pas bien par quoi je dois commencer. Dois-je commencer avec le coffre? Dois-je télécharger une nouvelle copie et ajouter / modifier cette copie avec mon code chaque fois que je veux créer un patch?

Encore une fois, alors que je l'ai fait en travaillant avec SVN et que le patch est vraiment en dehors de mes compétences actuelles et je veux changer cela. En espérant que vous, les experts en correctifs de WordPress, puissiez venir à mon secours. Merci d'avance.

MISE À JOUR:

Après la réponse de @ hakre, je pense que je devrais ajouter plus à la question:

  • Puis-je créer des correctifs à partir d'une ancienne version ou dois-je utiliser le tronc?
  • Si je travaille sur un projet utilisant la version publiée (3.0.1), puis-je le modifier et créer un correctif pour le noyau ou dois-je télécharger et configurer une copie vierge et nouvelle du tronc et y apporter de nouvelles modifications?
  • Puis-je faire avec des scripts shell pour pouvoir encoder la connexion dans le script et simplement exécuter le script pour recréer tout ce dont j'ai besoin et / ou pour créer le patch?
  • Et quels sont les pièges?

Toutes ces questions semblent être assumées par ceux qui savent comment fonctionne le SVN de WordPress et en tant que telles sont toujours passées sous silence dans toute discussion.

Réponses:


8

La façon la plus simple de créer un patch est décrite ici:

http://wordpress.org/download/svn/

Puis-je créer des correctifs à partir d'une ancienne version ou dois-je utiliser le tronc?

Vous devez créer le correctif avec la même version que celle sur laquelle vous souhaitez l'appliquer.

En d'autres termes, ne vous attendez pas à ce qu'un correctif créé avec WP 3.0.1 s'applique correctement sur WP 3.1-alpha.

Si je travaille sur un projet utilisant la version publiée (3.0.1), puis-je le modifier et créer un correctif pour le noyau ou dois-je télécharger et configurer une copie vierge et nouvelle du tronc et y apporter de nouvelles modifications?

Vous n'avez pas besoin de configurer une nouvelle installation pour chaque nouveau patch. Vous pouvez simplement utiliser svn revert pour revenir à une copie vierge.

De plus, la base de données n'a pas besoin d'être propre à chaque fois. En fait, il vaut mieux, si vous avez des modifications, simuler un environnement live.


1
Gee, c'est vraiment facile de créer un patch après avoir notre copie de travail svn diff > my-patch.patch:, moi gusta!
brasofilo

5

Eclipse PDT + Subclipse + X

J'utilise Eclipse qui a une intégration SVN . Je pense que PHP Strom le fait aussi. J'entre dans l'un de mes projets de tronc qui sont fondamentalement une extraction du référentiel svn WordPress.

Ensuite, je modifie les fichiers que je dois modifier. Eclipse montre qui sont modifiés, je clique avec le bouton droit sur un répertoire, sélectionne Team->Create Patchet on me propose tous les fichiers modifiés que je peux sélectionner pour le diff. Ensuite, je peux choisir entre la copie dans le presse-papiers ou l'enregistrement sur le disque. Je sauvegarde tous les correctifs que je crée avec le numéro de ticket dans un répertoire que j'ai sur mon disque dur.

Ensuite, je vais dans le navigateur et télécharge le patch.

Je pourrais également le faire avec une intégration MyLyn Trac , ce qui est encore plus confortable, mais vous avez besoin de XML-RPC directement dans trac, vous avez donc besoin d'un administrateur trac pour contacter. Cela fonctionne plutôt bien, mais je ne l'ai pas configuré dans tous les projets et je l'utilise principalement lorsque je fais des relevés de tickets.

Alors vraiment, consultez Eclipse si vous le souhaitez. C'est énorme et lent, vous avez donc besoin d'un gros ordinateur. Sur les petits, j'ai fait de bonnes expériences avec Fedora Linux. Eclipse fonctionne bien dessus. Je sais que vous êtes un fan de PHP Storm mais, eh bien, j'aime vraiment mon Eclipse et il est livré avec beaucoup d'extensions qui rockent vraiment. Même pour PHP :). Mais PHP Storm devrait également faire le checkout / patch.

WordPress Eclipse 1x1

Ah et j'ai un outil dans mon système d'exploitation qui enregistre tous les répertoires que j'ai utilisés. Je peux donc enregistrer les correctifs et télécharger les fichiers rapidement car ils proviennent toujours du même répertoire que celui que j'ai dans la liste récente.

Exemple d'intégration: PHP Code Sniffer, Eclipse et WordPress


Merci de répondre. J'ai essayé Eclipse et je détestais ça. Trop insensible et je n'ai tout simplement pas aimé l'interface. C'est donc une bonne réponse pour ceux pour qui Eclipse est une option mais votre réponse ne répond pas à mes besoins. Je vais y renoncer et voter, mais je préférerais une solution qui n'est pas liée à l'IDE, également une qui explique mieux le processus.
MikeSchinkel

Je voulais aussi dire que PhpStorm a une intégration complète SVN (et Git) mais son intégration nécessite vraiment qu'un utilisateur comprenne parfaitement quel effet chaque menu aura car il offre peu ou pas de conseils sur la façon de travailler avec eux (il y en a beaucoup dans les fichiers d'aide mais comme ils ne sont pas sensibles au contexte et comme SVN + Git est un énorme ajout à PhpStorm, il est facile de se perdre complètement dans tout cela.) C'est pourquoi je veux le comprendre au cœur et ne pas avoir à passer aux IDE Je n'aime pas le faire.
MikeSchinkel

@MikeSchinkel - Si SVN est trop compliqué pour vous (quelle que soit la saveur de SVN + Editor), vous ne pouvez pas créer de correctifs pour le projet wordpress. Fondamentalement, si vous n'aimez pas l'interface de votre interface utilisateur vers SVN, apprenez la ligne de commande. Mais vous devez quand même apprendre. Vous pouvez utiliser SVN avec n'importe quel éditeur que vous aimez btw .. J'ai un tronc SVN copyrunisé et configuré sur un serveur Web afin de créer des correctifs et de les tester. Après avoir effectué un correctif, je supprime les modifications locales (annuler) de ma copie locale et puis je peux continuer pour d'autres correctifs. C'est toujours du travail. Que dire de plus?
hakre

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.