@Stephen Bailey
Ihre Antwort zu vervollständigen, können Sie auch die Nutzungsrechte an den Projektmanager delegieren, durch eine einfache Textdatei in Ihrem Repository.
Um dies zu tun, richten Sie Ihre SVN-Datenbank mit einer Standard-authz
-Datei, die Folgendes enthält.
###########################################################################
# The content of this file always precedes the content of the
# $REPOS/admin/acl_descriptions.txt file.
# It describes the immutable permissions on main folders.
###########################################################################
[groups]
svnadmins = xxx,yyy,....
[/]
@svnadmins = rw
* = r
[/admin]
@svnadmins = rw
@projadmins = r
* =
[/admin/acl_descriptions.txt]
@projadmins = rw
Dieser Standard authz
Datei ermöglicht die SVN-Administratoren eine einfache Textdatei sichtbar in Ihrer SVN-Repository zu ändern, genannt ‚/admin/acl_descriptions.txt‘, in dem die SVN-Administratoren oder Projektmanager ändern und Registrieren Sie die Benutzer.
Dann richten Sie einen Pre-Commit-Hook ein, der erkennt, ob die Revision aus dieser Datei besteht (und nur diese Datei).
Wenn dies der Fall ist, validieren diese Hook-Skripts den Inhalt Ihrer Nur-Text-Datei und prüfen, ob jede Zeile mit der richtigen SVN-Syntax übereinstimmt.
Dann wird ein post-commit hook die \conf\authz
Datei mit der Verkettungs von Update: above
- Die Schablone
authz
Datei präsentiert
- die Klartextdatei
/admin/acl_descriptions.txt
der erste Iteration erfolgt durch den SVN-Administrator, er fügt hinzu:
[groups]
projadmins = zzzz
Er schreibt seine Änderung, und das aktualisiert die Datei authz
.
Dann kann der Projektmanager 'zzzz' eine Gruppe von Benutzern und beliebigen Benutzern hinzufügen, entfernen oder deklarieren. Er legt die Datei fest und die Datei authz
wird aktualisiert.
Auf diese Weise muss der SVN-Administrator nicht allen Benutzern für alle SVN-Repositories folgen.
relevante Handbuchseite ist: http://svnbook.red-bean.com/en/1.7/svn.serverconfig.pathbasedauthz.html – ErichBSchulz
Hinweis: es funktioniert nicht, wenn Sie Repository direkt über SSH zugreifen (ohne svnserve) –
Wenn ich zum Beispiel einen Ordner unter einem Repository zu Benutzer geben, kann der Benutzer nur auf diesen Ordner mit direkter Verknüpfung zugreifen. Ist es dem Benutzer möglich, ein Repository hinzuzufügen, und ihm werden nur die ihm zugewiesenen Ordner angezeigt? Danke für die Antwort . – maoanz