Это возможно, но то, как вам нужно будет это сделать, зависит от того, что вы используете для обслуживания своих хранилищ Subversion; Сама Subversion не определяет метод контроля доступа и оставляет такие проблемы на усмотрение любого программного обеспечения, которое вы используете для предоставления вашего хранилища вашим клиентам.
(На самом деле это предпочтительнее, чем осуществлять управление доступом внутри собственно Subversion, потому что он более модульный и, следовательно, более легко расширяемый; хранилище Subversion, обслуживаемое через Apache, может принимать участие в любом методе управления доступом, поддерживаемом Apache, вместо того, чтобы переопределять каждый такой метод как часть исходное дерево Subversion.)
Если вы обслуживаете свой репозиторий через Apache или с помощью инструмента svnserve
, поставляемого с дистрибутивом Subversion, подробности о настройке контроля доступа можно найти в главе 6 « Управление версиями с Subversion» , доступной бесплатно онлайн. В противном случае обратитесь к документации по вашему серверному программному обеспечению для получения дополнительной информации о том, как настроить необходимые параметры контроля доступа.
Последнее замечание: описываемые вами API-интерфейсы PHP и Ruby являются реализациями клиента Subversion, который почти наверняка будет полезен при разработке кода вашего приложения, но не поможет вам работать с управлением доступом на стороне сервера. Для этого вам необходимо найти какой-либо способ безопасного разрешения кодом вашего приложения изменения конфигурации вашего сервера репозитория (рискованно) или интеграции вашего приложения с базой данных аутентификации / авторизации, которую сервер репозитория использует для выяснения этого. кому разрешено идти куда-то в репо и что делать.