Mercurial-сервер добавляет разрешения в мой репозиторий

Я использую mercurial-server для управления своими репозиториями на корпоративном сервере. Я создал репозиторий для каждого пользователя и хотел, чтобы каждый из них мог давать доступ другому, т.е. каждый пользователь имел бы контроль доступа к вашим проектам в вашем репозитории. Но в документации по mercurial-серверу я вижу, что только администраторы могут предоставить такой доступ.

Так это работает или дает возможность как-то обойти это через mercurial-server или даже собственный mercurial(hg)?


person Jorge B.    schedule 28.02.2013    source источник


Ответы (1)


Если вы хотите делегировать управление правами доступа своим пользователям, они должны иметь доступ к репозиторию /hgadmin и иметь возможность изменять файл /hgadmin/access.conf, в котором находится детальный контроль доступа.

Насколько мне известно, (пока) нет способа использовать Mercurial-server для управления доступом, когда пользователь может предоставлять доступ к своему собственному репозиторию, но не к чужим репозиториям. Однако вы должны иметь возможность разработать такое расширение для системы: с помощью хука, который будет извлекать соответствующие права, например, из <user-repo>/admin/access.conf, и копировать их в зону, где другой хук или cron будет выбирать только строки, относящиеся к зоне <user-repo> (с sed или perl или что угодно), затем обновите настоящий файл access.conf и, наконец, зафиксируйте и отправьте его.

Надеюсь, это поможет.

person Christophe Muller    schedule 22.03.2013
comment
Спасибо за помощь. Я попробую это. - person Jorge B.; 10.04.2013