| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > УП: Общие вопросы > SVN, когда в репозитории несколько связ. проектов |
| Автор: Wowa 5.4.2010, 03:13 | ||
| У меня есть репозиторий SVN. В нем лежит несколько проектов, которые используют общие либы лежащие в этом же репозитории. структура
Как сделать так, чтобы дать разным группам программистов доступ к определенным applications, но при этом, чтобы они не имели доступ к другим applications, которые внутри этого же репозитория лежат? Доступ к общим либам должен быть у всех групп программистов. |
| Автор: maxim1000 5.4.2010, 09:36 |
| в svn'овской системе распределения доступа я не разбирался, но один из вариантов - понаписывать хуков, которые будут проверять имя пользователя и путь, когда он пытается что-нибудь сделать |
| Автор: Wowa 5.4.2010, 12:29 |
| Я вот думаю. хорошо было бы каталоги как-то маркировать.. Чтобы при загруке на рабочий сервер, также можно было одной командой типа svn update сгрузить файлы приналделажие только одному проекту. |
| Автор: bilbobagginz 5.4.2010, 13:01 | ||||||||
| Wowa, привет. то что тебе нужно достигается настройкой в файле /path/to/reporoot/conf/authz там есть примеры, и т.д. в общем внутри файла создай группы:
потом создай списки доступа на либы:
а теперь списки доступа на сами приложения:
теперь тебе надо указать апачу на этот файл в параграфе доступа к SVN, сразу после указания пути к репозитарию:
надо поиграться конечно, но идея думаю понятна. Если пользуешься LDAP/ActiveDirectory, то там можно длинным DN-ам дать алиасы, есть пример в начале файла. |
| Автор: Wowa 5.4.2010, 13:24 |
| о, как раз то, что нужно. Тем более, что такой файл уже есть. Нужно лишь его дополнить. |
| Автор: Wowa 5.4.2010, 13:59 |
| bilbobagginz, а если у меня в папке /trunk/lib/ есть еще несколько общих файлов, доступ к которым должны все группы разработчиков получить? Как тогда сделать? |
| Автор: Wowa 5.4.2010, 15:45 |
| к сожалению, еще проблема в том, что svn checkout не может прочитать корень и сам загрузить нужные каталоги(те на которые права доступа стоят для группы). Требуется перечислять аккаунты. Это не очень удобно. |
| Автор: bilbobagginz 6.4.2010, 02:17 |
| Wowa, организация файлов в репозитарии должна отражать требования контроля доступа. у тебя же сначала придумали неподходящую структуру, а теперь пытаетесь на нее надеть систему контроля доступа. в принципе, если такая пьянка - можно давать доступ поименно, но лучше перекинуть все общие файлы из ./lib в ./lib/common но в таком случае надо как-то запретить скачивать ревизии ранее какой-то заданной. я не знаю как это делать, наверное возможно как-то ограничить возможность чекаутов/и т.д. с более старых версий. хотя если вся организация файлов - не из-за того, чтобы не украли информацию, а чтобы было меньше шансов похЪрить файлы не принадлежащие конкретной команде, то хватит и реорганизации (переноса файлов). но думаю придется подправить мейкфайлы (или build.xml, если на ant-е сидите) |