Schnelleinstieg: Das erste lokale Repository registrieren
Der kürzeste Weg von „Plugin ist installiert“ zu „ein Repository auf der Serverplatte meldet ok und zeigt Branches, Tags und Commits im Wiki“. Vier Schritte, etwa zehn Minuten.
Zur Abgrenzung: Dieses Plugin liest Repositories im Dateisystem des Servers über das Programm git. Repositories, die in Azure DevOps liegen, bedient wkdoadogit.
Voraussetzungen
wkdogit,wkdocore,wkdostorageundwkcoresind installiert und aktiviert.gitist auf dem Server installiert, und der Benutzer, unter dem PHP läuft, darf es ausführen.- Ein Repository auf der Platte dieses Servers, lesbar für denselben Benutzer.
- Freiwillig:
wksourceview, damit Dateien auf Seiten eingebettet werden können.
Schritt 1: Das Programm benennen
Administration → Konfiguration, Abschnitt wkdogit, Einstellung git_binary. Sie ist ab Werk leer, es geht also nichts, bevor sie gesetzt ist.
Tragen Sie einen absoluten Pfad ein – unter Linux etwa /usr/bin/git, unter Windows den vollen Pfad zu git.exe.
Ein bloßes git sucht das Plugin bewusst nicht auf dem Suchpfad – sonst liefe, was dort als Erstes git heißt. Es findet dann keine Datei und meldet sich als nicht verfügbar.
Ein Wiki, das sein eigenes Git mitbringt, etwa auf einem USB-Stick, trägt einen Pfad relativ zum Wiki-Verzeichnis ein: ../server/git/{os}/bin/git. {os} wird zu windows, linux oder macos.
git_binary auf git. Ein bloßer Name wird nie auf dem Suchpfad gesucht; wkdogit startet hier deshalb kein Git und meldet sich als nicht verfügbar.
Schritt 2: Eingrenzen, wo Repositories liegen dürfen
Setzen Sie git_repo_root auf das Verzeichnis, in dem sie liegen.
Ein relativer Wert gilt ab dem Datenverzeichnis des Wikis: repositories meint den gleichnamigen Ordner neben pages und media. Existiert das Verzeichnis nicht, lässt das Plugin kein Repository zu – ein Tippfehler sperrt also, statt die Grenze aufzuheben.
Diese Einstellung begrenzt, welche Pfade registriert und benutzt werden dürfen. Setzen Sie sie, bevor Sie etwas registrieren: Sie entscheidet, ob „ein Repository-Pfad“ einen Ihrer Pfade meint oder jeden Pfad auf dem Rechner. Auf dieser Installation ist sie leer, also nicht eingegrenzt.
Schritt 3: Nachsehen, ob der Webserver wirklich lesen darf
Ein Repository, das Sie lesen dürfen, muss der Benutzer des Webservers noch lange nicht lesen dürfen. Das ist die häufigste erste Störung, und sie hat mit dem Plugin nichts zu tun.
Prüfen Sie, dass der Benutzer, unter dem PHP läuft, das Repository-Verzeichnis und dessen .git-Inhalt lesen kann.
Schritt 4: Registrieren und prüfen
Öffnen Sie den Repos-Bildschirm des Projekts, zum Beispiel /doku.php?id=de:projects:acme:repos&do=wkdogit.
Füllen Sie unter Repository registrieren aus: Key, Titel, Lokaler Pfad (innerhalb des Wurzelverzeichnisses aus Schritt 2) und Default-Branch. Pflicht ist der lokale Pfad oder eine Remote-URL; eine Remote-URL darf keine Zugangsdaten enthalten.
Wählen Sie Registrieren, danach in der Zeile Healthcheck.
Ergebnis prüfen
- Die Spalte Health steht auf ok. Steht sie anders – nicht erreichbar, ungültig oder verweigert –, nennt sie damit den Grund und nicht nur ein Scheitern: fehlendes Programm, Pfad außerhalb des Wurzelverzeichnisses, unlesbares Verzeichnis, oder etwas, das kein Repository ist.
- Das geöffnete Repository zeigt Branches, Tags und Commits.
- Jeder Aufruf ist auf
git_timeout_msbegrenzt, ab Werk 5000 Millisekunden. Ein sehr großes Repository kann diese Grenze schon bei der ersten Auflistung erreichen; die Antwort darauf liegt meist beim Repository und nicht bei der Einstellung.
Nächster Schritt
- wksourceview – eine Datei daraus auf einer Wiki-Seite anzeigen, über die Quelle
git:. - wkdogit – Referenz: das Lesemodell, die Verb-Erlaubnisliste und alle fünf Einstellungen, darunter
max_bytesundmax_lines, die bewusst denen der Quelltextanzeige entsprechen.