Ich habe ein paar Patches für WordPress Core auf Trac eingereicht (von denen einer verwendet wurde), aber jedes Mal, wenn ich darüber nachdenke, schaudere ich, weil mein Setup dafür unglaublich langweilig ist.
Kann jemand bitte die Schritte detaillieren, die zum Einreichen eines Patches für den Core erforderlich sind, und dann den besten Weg, um den Prozess so zu rationalisieren, dass er nicht so langweilig ist? Ich arbeite derzeit mit Mac OS X und PhpStorm, denke aber, dass ein Shell-Skript am einfachsten ist? Oder vielleicht ein PHP-Skript, das die ganze Arbeit macht?
Eines der Probleme ist, dass ich nicht ganz verstehe, womit ich anfangen muss. Beginne ich mit Kofferraum? Muss ich jedes Mal, wenn ich einen Patch erstellen möchte, eine neue Kopie herunterladen und diese Kopie mit meinem Code hinzufügen / bearbeiten?
Auch hier liegt die Arbeit mit SVN und dem Patchen außerhalb meiner derzeitigen Fähigkeiten, und das möchte ich ändern. Ich hoffe, Sie WordPress-Patching-Experten können zu meiner Rettung kommen. Danke im Voraus.
AKTUALISIEREN:
Nach der Antwort von @ hakre sollte ich der Frage mehr hinzufügen:
- Kann ich Patches aus einer älteren Version erstellen oder muss ich trunk verwenden?
- Wenn ich mit der freigegebenen Version (3.0.1) an einem Projekt arbeite, kann ich es ändern und einen Patch für den Core erstellen oder muss ich eine makellose und neue Kopie von trunk herunterladen und einrichten und meine Änderungen dort neu vornehmen?
- Kann ich mit Shell-Skripten arbeiten, um die Anmeldung im Skript zu verschlüsseln und das Skript auszuführen, um alles neu zu erstellen, was ich brauche, und / oder um den Patch zu erstellen?
- Und was sind die Tücken?
All diese Fragen scheinen von denen angenommen zu werden, die wissen, wie WordPress's SVN funktioniert, und werden daher in jeder Diskussion übersehen.
svn diff > my-patch.patch
me gusta!Eclipse PDT + Subclipse + X
Ich verwende Eclipse mit SVN-Integration . Ich denke, PHP Strom tut dies auch. Ich gehe in eines meiner Trunk-Projekte, die im Grunde eine Prüfung aus dem WordPress-SVN-Repository sind.
Dann bearbeite ich die Dateien, die ich bearbeiten muss. Eclipse zeigt an, welche Änderungen vorgenommen wurden. Ich klicke mit der rechten Maustaste auf ein Verzeichnis, wähle
Team->Create Patch
und mir werden alle geänderten Dateien angeboten, die ich für das Diff auswählen kann. Dann kann ich zwischen Kopieren in die Zwischenablage oder Speichern auf der Festplatte wählen. Ich speichere alle Patches, die ich mit der Ticketnummer erstelle, in einem Verzeichnis, das ich auf meiner Festplatte habe.Dann gehe ich in den Browser und lade den Patch hoch.
Ich könnte dies auch mit einer MyLyn Trac- Integration tun , die noch komfortabler ist, aber Sie benötigen XML-RPC direkt in trac, sodass Sie einen trac-Administrator für die Kontaktaufnahme benötigen. Es funktioniert ziemlich gut, aber ich habe es nicht in jedem Projekt konfiguriert und verwende es hauptsächlich, wenn ich Ticket-Rundowns mache.
Also, schauen Sie sich Eclipse an, wenn Sie möchten. Es ist riesig und langsam, sodass Sie entweder einen großen Computer benötigen. Auf kleinen habe ich gute Erfahrungen mit Fedora Linux gemacht. Eclipse läuft gut darauf. Ich weiß, dass Sie ein PHP Storm-Fan sind, aber ich mag meine Eclipse wirklich und sie kommt mit vielen Erweiterungen, die wirklich rocken. Auch für PHP :). Aber PHP Storm sollte grundsätzlich auch das Checkout / Patch-Zeug erledigen.
WordPress Eclipse 1x1
Ah und ich haben ein Tool in meinem Betriebssystem, das alle von mir verwendeten Verzeichnisse speichert. So kann ich die Patches speichern und die Dateien schnell hochladen, da sie immer aus demselben Verzeichnis stammen, das ich in der letzten Liste habe.
Integrationsbeispiel: PHP Code Sniffer, Eclipse und WordPress
quelle
Ich benutze diese selbst:
https://core.trac.wordpress.org/ticket/9724
Obwohl es offensichtlich mehr in der Abteilung für das Anwenden von Patches liegt. ;-)
quelle