Git server web interface for small synology systems (that do not support things like Gitea via virtualization)
- Login via diskstation accounts (FileStation API)
- Create/delete repos
- Browse repo branches, directories and files
- List commits and tags
- Preview files (text)
- En-/disable force push per repo
- Manage (add/remove) ssh keys
- Git Server (Currently, there is an issue with the bundled git shell, and a work around using the community version. See https://community.synology.com/enu/forum/8/post/147518)
- Web Server
- PHP 7.0+
- FileStation
- Zuerst wird ein Basisordner benötigt, in dem alle Git-Verzeichnisse angelegt werden sollen.
- Erstelle einen neuen Gemeinsamen Ordner git:
- In der App Systemsteuerung die Kategorie Gemeinsamer Ordner wählen und den Button Erstellen nutzen.
- Name: git
- [ ] Verbergen sie diesen gemenisamen Ordner unter "Netzwerkumgebung"
- [✓] Unterordner und Dateien vor Benutzern ohne Berechtigungen ausblenden
- [ ] Papierkorb aktivieren
- [ ] Diesen gemeinsamen Ordner verschlüsseln
- OK.
- In der App Systemsteuerung die Kategorie Gemeinsamer Ordner wählen und den Button Erstellen nutzen.
- Das Fenster wechselt automatisch zu Freigegebenen Ordner git bearbeiten, in den Tab Berechtigungen.
Dort muss der Zugriff für die Web-Oberfläche freigegeben werden:- Filter von Lokale Benutzer zu Lokale Gruppen wechseln.
- Der Gruppe http die Berechtigungen zum Lesen/Schreiben [✓] aktivieren.
- OK.
- Erstelle einen neuen Gemeinsamen Ordner git:
- Nun wird ein Nutzer für den externen Zugriff per Git benötigt.
- Erstelle einen neuen Benutzer git und füge ihn der Gruppe http zu.
- In der App Systemsteuering die Kategorie Benutzer wählen und den Button Erstellen nutzen.
- Name: git
- [✓] Lassen Sie nicht zu, dass der Benutzer das Konto-Passwort ändern kann.
- Weiter
- Im folgenden Fenster Gruppen beitreten die Gruppe http [✓] aktivieren.
- Weiter
- Im folgenden Fenster Berechtigungen für gemeinsame Ordner zuweisen für den gemeinsamen Ordner web die Spalte Kein Zugriff [✓] aktivieren.
- 2 x Weiter
- Im folgenden Fenster Anwendungsberechtigungen zuweisen für alle Anwendungen Verweigern [✓] aktivieren.
- 2 x Weiter
- Übernehmen
- In der App Systemsteuering die Kategorie Benutzer wählen und den Button Erstellen nutzen.
- Dem Benutzer in der Git Server App den Zugriff für den Nutzer git erlauben.
- Jetzt muss der externe Zugriff per Git für diesen Nutzer noch zugelassen werden:
- In der App Git Server den Zugriff für Nutzer git [✓] erlauben.
- Übernehmen
- Jetzt muss der externe Zugriff per Git für diesen Nutzer noch zugelassen werden:
- Erstelle einen neuen Benutzer git und füge ihn der Gruppe http zu.
- Um SSH-Keys verwalten zu können, wird das PHP Plugin openssl in der Web Station App benötigt:
- In der App Web Station auf Allgemeine Einstellungen wechseln und die genutzte PHP Version merken.
- Auf PHP-Einstellungen wechseln.
- Das genutzte Profil (gemerkte Version) bearbeiten.
- Unten bei Erweiterungen den Eintrag openssl suchen und [✓] aktivieren.