Vários logins de repositório SVN

Vários logins de repositório SVN

Eu tenho um sistema Ubuntu e instalei o subversion nele. Agora quero criar vários repositórios nele. Todo o repositório deve ter seus próprios logins.

por exemplo---example.com/svn/repo1: usuário--1

exemplo.com/svn/repo2: usuário--2

exemplo.com/svn/repo3: usuário--3

Agora o usuário1 não deve acessar o repo2 e o repo3. & user2 não deve acessar o repo1 & repo3

Consigo criar vários repositórios, mas não os logoins. Por favor, me ajude.

Obrigado

Responder1

Usar dav_svn_module

Aqui está um exemplo de conf, vejalivro svnir mais fundo

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>

Um exemplo de autorização:

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

Responder2

Use svnserve em vez do servidor Apache. Dentro do repositório que você criou, você encontrará um diretório conf. Usando seu editor de texto preferido, edite os seguintes arquivos com estas alterações:


No svnserve.conf, remova o comentário do seguinte: [general]

anon-access = read(e altere a leitura para nenhuma)

auth-access = write

passwd-db = passwd

No arquivo passwd adicione os nomes de usuário e suas senhas correspondentes no formato nome de usuário = senha

[users]
admin = adminspass
dev1 = devspass

Faça alterações semelhantes em todos os seus repositórios e inicie o svnserve usando o comando: svnserve -d --foreground -r /root/dir/of/repo ou seja, se você criou os repositórios em /home/svn conforme descrito em muitos tutoriais, o comando será parecido comsvnserve -d --foreground -r /home/svn

Os repositórios podem ser acessados ​​usando qualquer cliente SVN com a URL:

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

informação relacionada