Skip to main content

Einführung

Bevor Sie mit der Entwicklung beginnen, sollten Sie folgende Punkte kennen:
  • Overleaf wird offiziell in einem internen Repository entwickelt, und die Community Edition wird unter overleaf/overleaf veröffentlicht. Ein Copybot ist für die Synchronisierung des Codes zwischen dem internen und dem öffentlichen Repository zuständig.
  • Ayaka-notes/overleaf-pro ist ein Fork der Overleaf Community Edition. Wir möchten, dass dieses Projekt langfristig bestehen bleibt, daher befolgen Sie bitte die Regeln, bevor Sie Beiträge leisten.

Commit-Regeln

  • Bitte nehmen Sie keine umfangreichen Änderungen am bestehenden Overleaf-Code vor. Bündeln Sie so viel Funktionalität wie möglich im Ordner services/web/modules. Dadurch minimieren wir unseren Aufwand beim späteren Zusammenführen und Aktualisieren des Codes.
  • Vibe Coding ist zwar sehr bequem, kann unser Projekt aber leicht durcheinanderbringen und es später unwartbar machen. Setzen Sie es daher bitte mit Bedacht ein.
  • Bitte fügen Sie während der Entwicklung keine übersetzungsbezogenen Inhalte hinzu; verwenden Sie nach Möglichkeit vorhandene Übersetzungen.
  • Vermeiden Sie neue Umgebungsvariablen, sofern sie nicht unbedingt erforderlich sind. Falls doch, sorgen Sie dafür, dass sie so weit wie möglich mit denen im Overleaf Toolkit oder auf docs.overleaf.com übereinstimmen.

Branch-Regeln

Für die Entwicklung von overleaf-pro verwenden wir die folgenden Branches:
  • main: Dieser Branch dient ausschließlich der Synchronisierung mit dem Upstream-Code. Bitte committen Sie hier KEINE externen Änderungen. In diesem Branch setzen wir Tags wie ce-v[X.x.x], die angeben, dass der Stand v[X.x.x] der offiziellen Overleaf Community Edition entspricht. Hinweis: Diese Tags sind unveränderlich!
  • server-pro: Dies ist der Standard-Branch für die tägliche Entwicklung.
  • feature-X: Dieser Branch wird für die Entwicklung eines bestimmten Features verwendet.
  • release-vX.0.0: Der Branch speziell für Releases; hier nehmen wir vor dem Release einige Hotfixes vor.

Branch-Regeln für Overleaf Pro

GitHub Action

GitHub Action ist für das automatische CI/CD zuständig, das Folgendes umfasst:
  • Nächtliche Aktualisierung des main-Branches
  • Erstellen von Docker-Images für die Entwicklung
  • Veröffentlichen von Docker-Images

Fragen & Antworten

Zunächst müssen Sie das Docker-Image herunterladen und mit dem folgenden Befehl die Labels dieses Docker-Images untersuchen:
bash
Anschließend können Sie prüfen, ob der Commit (b0d05c0) im Upstream-master-Branch vorhanden ist.
Dies ist das erwartete Verhalten. Das Release 6.0.1 ist ein kleines Patch-Release, das auf dem Image 6.0.0 aufbaut. Die Änderungen werden durch Patchen des bestehenden 6.0.0-Images angewendet, anstatt das Image aus einem neuen Commit neu zu erstellen. Daher ist der Commit-Hash im Image bei 6.0.0 und 6.0.1 identisch.Weitere Informationen finden Sie unter hotfix.
Zuletzt geändert am 4. Oktober 2026