Overleaf - Nutzungshinweise

Wer kann den Service nutzen?

Zugang haben alle Personen mit einem gültigen zentralen ITMZ Nutzungskonto. Der Zugriff erfolgt über den zentralen Anmeldedienst der Universität Rostock mit dem persönlichen Nutzungskennzeichen und dazugehörigem Passwort. Eine separate Freischaltung durch das IT- und Medienzentrum ist nicht notwendig.

Externe Personen können Overleaf nicht mit einem eigenen Account nutzen. Eine gemeinsame Zusammenarbeit an bestehenden Projekten ist dennoch möglich (siehe Kollaboration an Projekten).

Kollaboration an Projekten

Angelegte Projekte können mit anderen Personen geteilt werden. Die Freigabeoptionen sind über den Reiter „Share“ oben rechts in der Projektansicht zu erreichen.

Folgende Möglichkeiten stehen zur Verfügung:

  • Unter dem Punkt „Share with your collaborators“ kann man andere Personen mit gültigem zentralen ITMZ Nutzungskonto zur Zusammenarbeit einladen, indem man die zugehörige Email-Adresse angibt. Dabei lässt sich zwischen lesenden und schreibenden Rechten wählen. Die jeweilige Person erhält daraufhin eine Benachrichtigungs-Mail.
  • Über den Link „Turn on link sharing“ kann man das Projekt öffentlich zugänglich machen. Dabei werden projektspezifische URLs zum Schreiben und Lesen erzeugt, die für einen externen Zugriff weitergeleitet werden können. Jede Person, die über die jeweilige URL verfügt, kann anonym am Projekt mitarbeiten.

Des Weiteren stehen für die Kollaboration eine Chatfunktion (zu erreichen über den Reiter „Chat“ in der Projektansicht) und eine Review-/Kommentarfunktion (zu erreichen über den Reiter „Review“ in der Projektansicht) zur Verfügung. Externe Mitarbeitende haben hierauf aber leider keinen Zugriff.

Außerdem ist eine Versionsverwaltung integriert (zu erreichen über den Reiter „History“ in der Projektansicht), über die alle Beitragenden jegliche Veränderungen am Projekt nachvollziehen können. Es ist auch möglich, verschiedenen Versionen des Projektes ein Label zu geben und unterschiedliche Zustände miteinander zu vergleichen.

Einstieg in Overleaf

Für einen Einstieg in LaTeX und Overleaf bietet der Hersteller ausführliche Ressourcen an (englisch):

  • Eine breit aufgestellte Dokumentation mit Informationen zu LaTeX und Overleaf.
  • Eine Seite mit weiterführenden Links zu verschiedenen Tutorials.

Für LaTeX-Neulinge gibt es auch die Option, Dokumente im Stile von „What you see is what you get“ zu erstellen, indem man den Rich-Text-Editor aktiviert (oben links in der Projektansicht). Dort werden beispielsweise Überschriften, Textformatierungen und mathematische Formeln direkt angezeigt und können über separate Schaltflächen eingefügt werden. Der Quellcode kann durch einen Klick, z. B. auf eine Formel, sichtbar gemacht und bearbeitet werden.

Overleaf Rich-Text-Editor
Der Overleaf Rich-Text-Editor ermöglicht grafisches Arbeiten.
Git Integration

Die folgenden Ausführungen sind eine Zusammenstellung aus der offiziellen Overleaf Dokumentation:

Was ist die Overleaf Git Integration?

Die Git-Integration von Overleaf ermöglicht es, eine Git-URL aus einem Overleaf-Projekt abzurufen und dieses wie ein Remote-Git-Repository zu behandeln. Damit lässt sich jedes Projekt in ein lokales Git-Repository klonen, um daran lokal zu arbeiten. Änderungen können dann vom lokalen Stand in das Overleaf-Projekt übertragen werden (push) und Aktualisierungen, die im Online-Editor von Overleaf vorgenommen wurden, können in das lokale Repository übernommen werden (pull).

Dies ermöglicht die lokale Arbeit an einem Projekt, wenn keine Internetverbindung verfügbar ist, die Verwendung eines anderen lokalen Editors, oder Ausgaben aus anderen lokalen Programmen leicht zu Ihrem Overleaf-Projekt hinzuzufügen.

Die Overleaf Git Integration steht nur Angehörigen der Universität Rostock mit einem gültigen zentralen Nutzungskonto zur Verfügung. Externe Mitwirkende, die über die Link-Weitergabe anonymisiert Zugriff auf einzelne Projekte erhalten haben, können die Git Funktionalität nicht nutzen.

Wie authentifiziere ich mich?

Wenn Sie eine Git-Operation wie Klonen, Pull oder Push zum Overleaf Git-Repository durchführen, müssen Sie sich als Besitzer oder Mitwirkender des Projektes authentifizieren. Dies erfolgt über sogenannte Git Authentifizierungs-Token. Derartige Token können in den Overleaf Accounteinstellungen verwaltet werden (Erstellen und Löschen von Token).

  • Wenn Sie zur Eingabe eines Benutzernamens aufgefordert werden, geben Sie den Namen "git" ein.
  • Wenn Sie zur Eingabe eines Passworts aufgefordert werden, geben Sie Ihr Token ein.
  • Dasselbe Token kann verwendet werden, um auf alle Ihre Projekte mit Git zuzugreifen.
  • Die von Ihnen generierten Token sollten ausschließlich von Ihnen verwendet und sicher gespeichert werden.
  • Generierte Token sind ein Jahr lang gültig.
  • Es können maximal 10 Token gleichzeitig laufen.

Hinweise zu Git Authentifizierungs-Token

Sie können eine Liste Ihrer Token in Ihren Accounteinstellungen finden. Beachten Sie jedoch, dass Sie nicht das gesamte Token anzeigen können. Sollten Sie Ihr Token vergessen haben und dieses über Git nicht abgespeichert haben (Git Credential Helper), müssen Sie ein neues Token generieren.

Wird ein Token gelöscht, kann es nicht mehr zur Authentifizierung Ihrer Identität bei Git-Operationen verwendet werden. Wenn Sie eine Operation mit einem abgelaufenen oder gelöschten Token versuchen auszuführen, erhalten Sie wahrscheinlich einen Authentifizierungsfehler.

Sie sollten niemals ein Token teilen. Behandeln Sie es genauso sicher wie einen Benutzernamen und ein Passwort. Wenn Sie versehentlich ein Token geteilt haben, sollten Sie es löschen.

Wie klone ich ein Projekt?

Hier wird erklärt, wie ein Overleaf-Projekt mit der Git-Kommandozeile geklont wird. Falls Sie eine externe Git Software verwenden, halten Sie sich an deren passende Methode und verwenden zur Authentifizierung die oben genannten Schritte.

  1. Wählen Sie den Punkt Git unter dem Projekt-Menü.
  2. Kopieren Sie den Befehl zum Klonen, der die Git-URL des Projektes enthält.
  3. Führen Sie den Befehl in einer Kommandozeile aus. Beachten Sie, dass der Benutzername "git" bereits in den Befehl integriert ist.
  4. Geben Sie Ihr Git Token ein, sobald Sie nach einem Passwort gefragt werden.
    • Falls Sie noch kein Token generiert haben, folgen Sie den Schritten unter "Wie authentifiziere ich mich?"
    • Sie können ein bereits generiertes Token verwenden.
    • Tipp: Mit dem Git Credential Helper können Sie Ihre Anmeldeinformationen speichern, sodass Sie nicht jedes Mal ein Token kopieren müssen.

Anmeldeinformationen speichern - Git Credential Helper

Mithilfe des Git Credential Helpers kann Git Ihre Anmeldeinformationen (Token) speichern. Wenn Sie die Git-Kommandozeile verwenden, können Sie den folgenden Befehl ausführen, um das Speichern zu aktivieren:

"git config --global credential.helper store"

Weiterführende Informationen finden Sie in der Git Dokumentation.

Die Git-URL verstehen

Die Git-Clone-URL kann aus dem Projektmenü ausgewählt werden, indem Sie Git wählen. Alternativ können Sie die Git-URL auch aus der Projekt-URL erhalten (die URL in der Adressleiste des Browsers, wenn Sie sich in einem Projekt befinden). Wenn Ihre Overleaf-Projekt-URL wie folgt aussieht:

overleaf.uni-rostock.de/project/123456789

Dann lautet die Git-URL, die zum Klonen des Projekts verwendet wird:

overleaf.uni-rostock.de/git/123456789

Ihr Benutzername wird "git" sein, und das Passwort wird das Token sein, das Sie von Ihrem Overleaf-Konto erhalten.

Der Befehl und die URL, die im Git-Modal im Projektmenü angegeben sind, bestehen aus: (1) dem "git clone"-Befehl, der in der Git-Kommandozeile verwendet wird, und (2) der vollständigen Git-URL, einschließlich des Benutzernamens "git", des spezifischen Overleaf-Hosts und eines Pfads, der die Projekt-ID enthält.

Wie erstelle ich ein Overleaf Projekt aus einem vorhandenem Git Repository?

Wenn Sie bereits ein Git-Repository haben, können Sie ein Overleaf Projekt als Remote-Repository hinzufügen.

  1. Wir gehen davon aus, dass Sie ein Repository auf Ihrem Computer haben. Es kann auch auf GitHub, GitLab, usw. gehostet sein, aber Sie müssen es auch lokal geklont haben.
  2. Erstellen Sie ein neues Projekt auf Overleaf. Da alle Inhalte im Projekt gleich überschrieben werden, verwenden Sie die Option "Leeres Projekt" (Blank Project).
  3. Löschen Sie manuell die Datei "main.tex" im Overleaf-Projekt.
  4. Holen Sie die Git-URL für das Projekt.
  5. Fügen Sie die Git-URL als Remote in Ihrem lokalen Projekt hinzu:
    > cd my_local_repo
    > git remote add overleaf <GIT-URL>
  6. Holen Sie den neuesten Inhalt aus dem Overleaf Projekt (nach Schritt 2 sollte dieses nichts enthalten) und führen Sie ihn im Master-Branch zusammen (merge).
    > git checkout master
    > git pull overleaf master --allow-unrelated-histories
  7. Nehmen Sie den merge zurück, um etwaige Dateien im vorhandenen Overleaf-Projekt loszuwerden. Falls zuvor ein leeres Projekt erstellt wurde und die einzige Datei "main.tex" gelöscht wurde, sollte dieser Schritt nicht notwendig sein.
    > git revert --mainline 1 HEAD
  8. Pushen Sie Ihr Projekt zu Overleaf
    > git push overleaf master
  9. Besuchen Sie das Projekt der Overleaf-Website. Ihre Änderungen sollten dort angezeigt werden. Sie müssen das Projektmenü aufrufen, um herauszufinden, welche Datei als Hauptdokument festgelegt wurde, um diese anfängliche Auswahl möglicherweise zu ändern.

Bekannte Einschränkungen und Fehler

Branches: Git branching wird nicht unterstützt.

Symlinks: Symbolische Links auf Dateien (Symlink) werden nicht korrekt verarbeitet. Ein Symlink kann zwar in ein Overleaf-Projekt übertragen werden, wird jedoch in eine normale Datei umgewandelt und überschreibt den lokalen Symlink beim nächsten Pull des Projekts.

Git LFS: Git Large File Storage wird nicht unterstützt.

Git Untermodule: Overleaf-Projekte können als Git Untermodule in anderen Repositorien fungieren, aber selbst keine Git Untermodule enthalten. Um Dateien anderer Projekte einzubinden, sollte die "Add Files From Another Project" Option in Overleaf genutzt werden.

Umbenennen von Ordnern: Wenn ein Benutzer einen Ordner umbenennt und die Änderung in Overleaf pusht, behält das Projekt einen leeren Ordner mit dem alten Namen bei, zusätzlich zum neuen Ordner. Beispiel: Das Umbenennen von "images/" in "img/" hinterlässt zwei Ordner im Projekt: "img/" mit den Bilddateien und "images/", der leer ist. Dies kann zu Problemen führen, wenn ein Benutzer in einem einzigen Commit einen Ordner umbenennt und eine neue Datei mit demselben Namen wie der alte Ordner erstellt. Das Overleaf Git-System lehnt diese Commits ab. In diesem Fall empfehlen wir, den Commit in zwei Teile aufzuteilen und den verbleibenden Ordner zu löschen.

Umbenennen und Verschieben von Dateien: Eine Umbenennung oder das Verschieben einer Datei in Ihren lokalen Repository wird seitens Overleaf als Löschen und neu Erstellen umgesetzt. Dies kann zum Verlust von Metadaten führen, die mit einer Datei verbunden sind, wie Einträgen aus der Review- und Kommentarfunktion. Es wird daher nicht empfohlen, Dateien über Git umzubenennen oder zu verschieben, die Overleaf interne Veränderungen oder Kommentare enthalten.

Push Fehler: Ein Fehler beim Pushen von Referenzen kann durch Überschreiten der maximal zulässigen Größe oder Anzahl von Dateien, oder durch das Einbinden nicht unterstützter Dateitypen (z.B: Symlinks oder LFS) entstehen. Bitte überprüfen Sie die oben aufgeführten bekannten Einschränkungen, um mögliche problematische Dateien im Commit zu identifizieren.

Timeouts: Commits, die eine große Anzahl von Änderungen enthalten, können potenziell zu Timeouts führen. Falls dies bei Ihnen eintreten sollte, versuche Sie bitte, den Commit in kleinere Änderungen aufzuteilen.

Wartung

Für das Overleaf der Universität Rostock gibt es derzeit keine festen Wartungszeiträume. Muss das System für ein Update oder eine Konfiguration temporär abgeschaltet werden, so wird eine individuelle Wartung angesetzt – meistens mit einer Vorlaufzeit von einer Woche. Hinweise dazu werden zum einen über systemweite Nachrichten auf der Overleaf-Plattform angekündigt.

Zum anderen erscheint eine Meldung auf den Informationsseiten des ITMZ zu Overleaf.