Lange Zeit galt es als bewährte Praxis, Themes, die aus einem entfernten Git-Repository installiert wurden, lokal auf Discourse nicht zu bearbeiten. Änderungen am Theme-Code oder an Uploads gehen bei einem Update des Themes aus dem Remote-Repository verloren.
In diesem Commit haben wir die Möglichkeit entfernt, ein Remote-Theme lokal zu bearbeiten, und setzen diese bewährte Praxis nun in Discourse durch.
Was passiert, wenn ich ein Remote-Theme mit lokalen Änderungen habe?
Im Moment nichts. Ihr Theme bleibt so, wie es ist, bis Sie es entfernen oder aus der Remote-Quelle aktualisieren.
Wie bewahre ich meine lokalen Änderungen?
Wenn Ihre Änderungen nur CSS betreffen:
Sie können Ihre reinen CSS-Änderungen in eine brandneue lokale Theme-Komponente kopieren. Gehen Sie dabei wie folgt vor:
- Klicken Sie auf Installieren.
- Klicken Sie auf Neu erstellen.
- Klicken Sie im rechten Bereich auf die Schaltfläche Bearbeiten.
- Kopieren Sie Ihre CSS-Änderungen in die entsprechende Datei (common/mobile/desktop).
- Speichern und aktivieren Sie die Theme-Komponente.
- Aktualisieren Sie Ihr Remote-Theme, um die lokalen Änderungen zu überschreiben und doppeltes CSS zu vermeiden.
Wenn Sie mehr als nur CSS geändert haben (JS/Templates):
Wenn Sie Ihre lokalen Änderungen beibehalten möchten, empfehlen wir, das Theme in ein lokales Theme zu überführen. Gehen Sie dabei wie folgt vor:
- Öffnen Sie das Theme unter Admin > Anpassen.
- Klicken Sie auf Exportieren, um das Theme mit Ihren lokalen Änderungen herunterzuladen.
- Klicken Sie in der Theme-Liste auf Installieren und wählen Sie dann
Von Ihrem Gerät. - Laden Sie das exportierte Theme hoch, installieren und aktivieren Sie es wie zuvor.
Eine weitere Option für Interessierte ist das Forken des Remote-Themes auf GitHub, das Einchecken Ihrer Änderungen in das geforkte Repository und die Installation dieses Forks auf Ihrer Discourse-Instanz. Dies ermöglicht die Option, Ihre Änderungen auf zukünftige Updates des Haupt-Repositories zu rebasen, was die Umwandlung in ein lokales Theme nicht bietet.
Schließlich entfernen Sie unbedingt das Remote-Theme, um Duplizierung von Änderungen und zukünftige Verwirrung zu vermeiden.