Mehrere SVN-Repository-Anmeldungen

Mehrere SVN-Repository-Anmeldungen

Ich habe ein Ubuntu-System und darauf Subversion installiert. Jetzt möchte ich mehrere Repositorys darauf erstellen. Alle Repositorys müssen eigene Logins haben.

zum Beispiel --- example.com/svn/repo1 : Benutzer --1

example.com/svn/repo2 : Benutzer--2

example.com/svn/repo3 : Benutzer--3

Jetzt darf Benutzer1 nicht auf Repo2 und Repo3 zugreifen. & Benutzer2 darf nicht auf Repo1 und Repo3 zugreifen

Ich kann mehrere Repos erstellen, aber nicht die Anmeldungen. Bitte helfen Sie mir.

Danke

Antwort1

Verwenden Sie dav_svn_module

Hier ist eine Beispiel-Konferenz, sieheSVN-Buchtiefer gehen

LoadModule dav_svn_module /usr/lib/apache/mod_dav_svn.so
LoadModule authz_svn_module /usr/lib/apache/mod_authz_svn.so

<IfModule dav_svn_module>
<IfModule authz_svn_module>
<Location /svn>
    DAV svn
    SVNParentPath /svn

    AuthzSVNAccessFile /etc/apache2/svn_authz
    Satisfy Any
    Require valid-user
    AuthType Basic
    AuthName "Subversion repository"
    AuthUserFile /etc/apache2/svn_passwd
</Location>
</IfModule>
</IfModule>

Ein Authz-Beispiel:

cat /etc/apache2/dav_svn.authz

[groups]
admin      = foo
graph      = bar
developers = foo,baz

[/]
*           =
@admin      = rw
@developers = rw
@graph      = r

[/branches/prod/*]
*           =
@admin      = rw

[ZCS:/]
*           =
@admin      = rw
@developers = rw
@graph      = rw

[SYMFONY_PLUGINS:/]
*           =
@admin      = rw
@developers = rw

[SYMFONY:/]
*           =
@admin      = rw
@developers = rw

Antwort2

Verwenden Sie svnserve anstelle des Apache-Servers. Im von Ihnen erstellten Repository finden Sie ein conf-Verzeichnis. Bearbeiten Sie mit Ihrem bevorzugten Texteditor die folgenden Dateien mit diesen Änderungen:


Entfernen Sie in svnserve.conf die Kommentarzeichen aus dem folgenden Eintrag: [general]

anon-access = read(und ändere „read“ auf „none“)

auth-access = write

passwd-db = passwd

Fügen Sie in der Datei passwd die Benutzernamen und die entsprechenden Passwörter im Format Benutzername = Passwort hinzu

[users]
admin = adminspass
dev1 = devspass

Nehmen Sie ähnliche Änderungen in allen Ihren Repositories vor und starten Sie svnserve mit dem Befehl: svnserve -d --foreground -r /root/dir/of/repo Wenn Sie die Repositories in /home/svn erstellt haben, wie in vielen Tutorials beschrieben, sieht der Befehl folgendermaßen aus:svnserve -d --foreground -r /home/svn

Auf die Repos kann mit jedem SVN-Client mit der folgenden URL zugegriffen werden:

svn://hostname-or-ip/repo-name

verwandte Informationen