Wir betreiben ein SVN-Repository. Einige unserer fortgeschrittenen Benutzer müssen in der Lage sein, eine SVN-Verwaltung durchzuführen, ohne sich auf den Systemadministrator verlassen zu müssen.
Sie müssen in der Lage sein, SVN-Repositorys zu erstellen, SVN-Repositorys zu löschen und Befehle wie 'svnadmin dump' und 'svnadmin load' auszuführen.
Wir möchten den SSH-Zugriff auf diesen FreeBSD-Computern vermeiden und möchten lieber eine Serviceschnittstelle über eine Web-Benutzeroberfläche bereitstellen.
Ich suche ein einfaches Skript (oder eine kleine Anzahl von Skripten), die Perl oder PHP verwenden. Ich fand svnadmin (von Jochen Hoenicke) oder svnadmin.pl (von doug munsinger), hoffte aber, etwas mit einer größeren Benutzergemeinschaft zu finden, oder das von anderen empfohlen wurde.
Es sieht so aus, als ob Trac die SVN-Verwaltung erlaubt, aber möglicherweise mehr Funktionen enthält, als wir benötigen.
quelle
Antworten:
Späte Antwort, da ich neu bei Serverfault bin: Wir (Compsci-Abteilung der Universität) haben unser eigenes Self-Service-SVN-Webinterface entwickelt und es als Open Source verfügbar gemacht. Named Repocafe, verfügbar unter http://repocafe.cs.uu.nl/ . Modelliert nach unseren eigenen Anforderungen kann es mit einzelnen oder mehreren LDAP-Servern und Gastbenutzern umgehen. Vielleicht ein bisschen übertrieben für 'einfach'.
quelle
Am Ende haben wir uns für svnadmin (von Jochen Hoenicke) entschieden.
Dies hat gewonnen, weil es sich um eine einzelne, einfache Datei mit 400 Codezeilen handelte, die wir bei Bedarf selbst reparieren können. Leider gibt es keine Benutzergemeinschaft oder viele Empfehlungen. Aber die Einfachheit gewinnt. Frag mich in 6 Monaten, ob wir es empfehlen;)
quelle
Trac und Redmine sind die einzigen, von denen ich weiß, dass sie das gut machen. Beide zielen jedoch mehr auf das Projektmanagement als auf die einfache Repository-Verwaltung.
quelle
Es gibt ein Usermin-Modul für Subversion, aber ich bin mir nicht sicher, ob Sie damit tun können, was Sie brauchen.
quelle
Es gibt "User Friendly SVN" USVN . Ich denke, Sie werden feststellen, dass der größte Teil des Community-Aufwands für so etwas gering ist - SVN wird aktiv gewartet, aber die Admin-Tools sind ein Teil, der dies nicht tut. Sie werden in der Regel einmal geschrieben und funktionieren für immer, sodass diese GUI-Tools auch nicht geändert werden müssen. Machen Sie sich also keine Sorgen darüber, wie groß die Community in diesem Fall ist.
quelle
Ich werde meine eigene Frage für die Nachwelt beantworten.
Ich habe auch USVN gefunden , ein PHP-basiertes SVN-Administrationstool. Es hat mehrere Iterationen durchlaufen, hat eine Benutzergemeinschaft und eine glänzende, funktionsreiche Website.
Das USVN-Projekt sieht jedoch etwas abgestanden aus. USVN war ein Projekt, das von Studenten einer Universität durchgeführt wurde, und jetzt haben die Administratoren ihren Abschluss gemacht und sind auf Jobsuche gegangen und haben möglicherweise keine Zeit mehr, sich an dem Projekt zu beteiligen. Seit 9 Monaten gab es kein Update mehr, der Bug-Tracker sieht nicht aktiv aus und die Foren sind mit Spam gefüllt und sehen etwas unbeaufsichtigt aus . Vielleicht ist die Community weniger aktiv, als es zuerst erscheint. Das ist nicht alles schlecht und ich hoffe, dass es diesen Leuten gut geht, aber ich würde mir Sorgen machen, in ein abgestandenes Projekt einzusteigen.
Das Projekt verwendet 200 Dateien (ohne die 2000 Dateien von Zend), die für uns möglicherweise schwer zu prüfen und zu warten sind und möglicherweise komplexer sind, als wir suchen. Außerdem stützt sich dieses Projekt auf Zend, das unter politischen Problemen bei FreeBSD leidet .
quelle
Ein weiterer Vorschlag von der svn dev Mailingliste vom 09. Dezember, also ziemlich neu!
quelle
Wir haben dies vor einem Jahr mit unserer neuen SVN-Distribution implementiert. Es hat wirklich gut geklappt.
Wir haben mehrere Entwicklungsteams und sie haben ihre eigenen Projekte. Also haben wir alle Informationen in LDAP gebracht und Teammanagern Schreibzugriff auf den Verzeichnisinformationsbaum (DIT) zur Subversion gewährt:
ou = Gruppen, ou = Subversion, ou = Apps, dc = Beispiel, dc = com ou = Repositorys, ou = Subversion, ou = Apps, dc = Beispiel, dc = com
Die oben genannte Organisationseinheit "Gruppen" besteht aus benutzerdefinierten Gruppen für Subversion-Repositorys / -Projekte. Außerdem verwenden wir 'viewvc' mit https, um Repositorys in svn anzuzeigen.
Der Apache-Server verwendet eine ACL-Datei, die auf Basis von LDAP DIT (siehe oben) erstellt wurde, um verschiedenen Benutzern und Gruppen Lese- und Schreibzugriff zu gewähren. Es gibt einen Cron, der alle fünf Minuten das LDAP-DIT liest und die ACL-Datei erstellt. Wenn also neue Repositorys mit schreibgeschützten und schreibgeschützten Benutzern / Gruppen hinzugefügt werden. Der Cron liest das und erstellt die Repositorys und nimmt diese Informationen in die ACL-Datei für das neu erstellte Repository auf. Es ist ziemlich ordentlich. Sie müssen offensichtlich ein LDAP-Schema erstellen, das auf Ihren Anforderungen basiert. Wir haben alle Benutzer- / Hostinformationen in LDAP, daher war es keine große Sache, sie um SVN-Informationen zu erweitern.
-F
quelle
Es scheint, dass sich die Dinge im Laufe der Zeit geändert haben. Hier ist ein weiteres Skript, das meiner Meinung nach eine gute Option für das SVN-Management darstellt: http://www.svn-access-manager.org/
quelle