Es ist mir peinlich zu sagen, dass ich etwas ahnungslos bin, wie ein Plugin über tortoise svn aktualisiert wird, obwohl mein Plugin seit Jahren im Repository ist und über 300.000 Downloads hatte!
Sei nicht so. SVN kann für viele Leute knifflig sein. Gehen wir also Schritt für Schritt vor.
Das habe ich bisher gemacht.
- Code die Plugin-Updates auf meinem lokalen, bis ich damit zufrieden bin
- Kopieren Sie alle Dateien in meinem lokalen Plugin-Ordner in das Verzeichnis / trunk / (die Plugin- und Readme-Datei enthält aktualisierte Versionsnummern).
- Übertragen Sie das Trunk-Verzeichnis
- Klicken Sie mit der rechten Maustaste auf das Trunk-Verzeichnis und wählen Sie Zweig / Tag erstellen und legen Sie fest, dass es in einen Ordner in / tags / kopiert wird, wobei der Name die Versionsnummer ist
Ist das richtig und in der richtigen Reihenfolge? wenn nicht, wie ist der richtige Weg?
Fast ...
Die Schritte, die Sie befolgen sollten:
- Codieren Sie die Plugin-Updates lokal, bis Sie damit zufrieden sind
- Erhöhen Sie das Tag "stable" in Ihrer
readme.txt
Datei, um der neuen Versionsnummer zu entsprechen
- Kopieren Sie Ihre lokalen Updates in das
/trunk
Verzeichnis des lokalen Plugin-Ordners
- Bestätigen Sie das gesamte Plugin , um die Änderungen
/trunk
im Repository zu speichern
- Klicken Sie mit der rechten Maustaste
/trunk
und erstellen Sie ein neues Tag. Kopieren Sie in /tags/X.X.X
das Tag "stable" von readme.txt
(Schritt 2) , in das xxx dieselbe Version hat.
- Bestätigen Sie das gesamte Plugin , um das Tag zu speichern
Aus irgendeinem Grund bin ich bei meinem letzten Update von Version 2.8.1 auf 2.81.2 übergegangen. Bedeutet dies, dass es nicht als Update in den Dashboards von Personen mit Version 2.81.2 angezeigt wird, wenn ich die nächste Versionsnummer in ändere 2,9?
Bingo. Wenn Sie Version 2.81.2 als Update übernommen haben und die Benutzer dieses Update tatsächlich heruntergeladen haben, wird 2.9 bei der Veröffentlichung nicht angezeigt.
Wie ermittelt WordPress, welche Version die neueste ist und ob der Benutzer seine Version aktualisieren soll? macht es einen version_compare? Das funktioniert nur mit der richtigen PHP-Version, nicht wahr? z.B. 2.9.2 ist eine niedrigere Version als 2.81.2? (weil version_compare, wie ich es verstehe, links beginnt und für jede Ziffer höher / niedriger vergleicht, sodass 9 als weniger als 81 betrachtet wird)
Genau. Bei einem Vergleich der Standard-PHP-Versionen wird Version 2.81.2 als neuere Version als 2.9 eingestuft, da 81> 9.
Ich empfehle Ihnen, als nächstes eine Version 3.0 zu veröffentlichen, und seien Sie in der Zukunft sehr vorsichtig , um diese Art von Tippfehler zu vermeiden.
Wenn ich einen dummen Fehler im Code finde, der sich nicht wirklich auf die Funktionsweise des Plugins auswirkt, möglicherweise einen Tippfehler oder ein zusätzliches Bild. Was muss ich bearbeiten und festlegen, damit neue Downloads des Plugins die Änderung enthalten?
muss ich den trunk UND den tag ordner bearbeiten und beides festschreiben?
Wenn Sie eine geringfügige Änderung vornehmen müssen, betrachten Sie diese als Wartungsversion . Ich folge normalerweise dieser Art von Versionierungsschema:
2 . 1 . 3 . 5
major minor maint build
Build-Nummern, die ich nur intern oder für Betaversionen verwende ... Sie werden fast nie eine Build-Nummer von mir sehen, es sei denn, ich sende Ihnen manuell eine Datei per E-Mail (so kann ich Vorabversionen verteilen, die WordPress-Updates nicht beschädigen). .
Wenn ich einen Fehler in einer Live-Version bemerke, erstelle ich einen schnellen Patch und veröffentliche eine Wartungsversion. Angenommen, ich habe Version 2.2 eines Plugins veröffentlicht und jemand bemerkt, dass ich vergessen habe, jQuery im noConflict () -Modus aufzurufen. Ich werde einen schnellen Patch machen und sofort 2.2.1 veröffentlichen.
Das Inkrement in der Version zwingt WordPress, das Update zu erkennen und das Update für alle bereitzustellen, die bereits Version 2.2 installiert haben.
Um eine Wartungsversion freizugeben, müssen Sie genau die gleichen Schritte ausführen, als ob Sie eine Vollversion des Systems freigeben würden. Nehmen Sie also Änderungen vor, erhöhen Sie die Version readme.txt
, übernehmen Sie /trunk
, markieren Sie usw.
Aber sobald Sie etwas markiert haben, ändern Sie es nie wieder. Stellen Sie sich Ihren /tags
Ordner als eingefroren vor. Jede Version in diesem Ordner ist eine Momentaufnahme Ihres Plugins zu einem bestimmten Zeitpunkt. Sie sollten niemals Dateien im /tags
Ordner direkt ändern .
Wenn Sie der Meinung sind, dass dies eine gute Idee sein könnte, schlagen Sie sich auf den Hinterkopf und veröffentlichen Sie stattdessen eine Wartungsversion :-)
Wie Piet sagte, habe ich früher eine gute Schritt-für-Schritt-Anleitung geschrieben ... aber die Seite scheint meine Screenshots verloren zu haben. Hier ist eine weitere Version derselben schrittweisen Anleitung mit Screenshots von Tortoise, die auf meiner eigenen Website gehostet wird: http://eamann.com/tech/how-to-publish-a-wordpress-plugin-subversion/