Если вы используете SVN и Apache вместе, выполните следующую процедуру:
Имейте в виду, что наилучший уровень разрешений, которым вы можете управлять, будет для каждого хранилища. Предположим, у вас есть хранилище1 и хранилище2
1 - сделать соответствующих пользователей для каждого хранилища в отдельном файле:
sudo htpasswd -c -m /etc/apache2/dav_svn_REPOSITORY1.passwd $user_name_for_repository1
sudo htpasswd -c -m /etc/apache2/dav_svn_REPOSITORY2.passwd $user_name_for_repository2
Если вы хотите добавить больше пользователей к каждому файлу, удалите -c из команды. потому что это просто для создания файла в первый раз.
2- Отредактируйте следующий файл:
nano /etc/apache2/mods-available/dav_svn.conf
у вас будет такой раздел:
<Location /svn>
SVNPath $your svn repository path
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
SSLRequireSSL
</Location>
Скопируйте этот блок для каждого имеющегося у вас хранилища, в нашем случае вам понадобится еще один такой блок. Теперь избавьтесь от (удалите) вышеуказанного блока и добавьте следующий блок, который является измененными копиями вышеупомянутого:
<Location /svn/repository1>
SVNPath $your svn repository1 path
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn_REPOSITORY1.passwd
Require valid-user
SSLRequireSSL
</Location>
<Location /svn/repository2>
SVNPath $your svn repository2 path
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn_REPOSITORY2.passwd
Require valid-user
SSLRequireSSL
</Location>
3- Сохраните файл и перезапустите Apache.