Я новичок в SVN и пытаюсь настроить управление доступом для нескольких проектов на SVN. Я хочу использовать один файл паролей и один файл аутентификации для контроля доступа для всех проектов. Но он не работает. Ниже приведены мои настройки. Моя структура каталогов:Контроль доступа для нескольких проектов с использованием SVN
/srv
|--svn
|--repos
|-- conf
|-- passwd
|-- authz
|-- projectX
|-- projectY
|-- projectZ
записей ProjectX/CONF/svnserve.conf для ProjectX:
[general]
anon-access = none
auth-access = write
password-db = /srv/svn/repos/conf/passwd
authz-db = /srv/svn/repos/conf/authz
realm = Project Repository
же конфигурация используется для projectY и projectZ. Записи в/SRV/СВН/репо/конф/пароль:
[users]
user1 = password
user2 = password
user3 = password
Записи в/SRV/СВН/хранилищу/CONF/AuthZ:
[/]
* =
user1 = rw
[projectX:/]
user2 = rw
user3 = r
[projectY:/]
user3 = rw
user2 = r
[projectZ:/]
user2 = r
user3 = r
Итак, user2 должен чтения-записи доступа для projectX и user3 должен иметь доступ только для чтения к projectX. Но только пользователь1 может получить доступ ко всем этим репозиториям. user2 и user3 никогда не смогут получить доступ к каким-либо репозиториям. Каждый раз, когда он выдает сообщение об ошибке: Commit failed (авторизация не удалась!) Может ли кто-нибудь помочь мне найти мою ошибку? Я использую версию 1.6.5 Subversion на сервере и 1.6.4 на клиенте.
Нужно ли что-то делать с тем, что я использую svnserve, а не Apache? Разрешает ли svnserve использовать один файл authz для нескольких репозиториев? Я пробовал один файл passwd и отдельный файл authz для каждого репозитория, и он сработал! Я ничего не мог найти в красной книге SVN, в которой говорится, что svnserve не позволяет использовать один файл authz. – 2009-10-10 04:10:10