Используете ли вы gitosis для определения прав доступа для каждой ветви? - PullRequest
10 голосов
/ 24 февраля 2009

Можно ли с помощью gitosis указать разрешения на запись, чтобы пользователи могли свободно перемещаться по веткам со своим именем, но не объединяться с мастером? Например. $ USER / test1 .. $ USER / test5

Это означает, что вы можете разместить только один репозиторий на проект, а не размещать несколько репозиториев для одного и того же проекта, специфичного для каждого пользователя:

 project1-user1
 project1-user2
 project1-user3
 ...
 project5-user1
 project5-user2
 project5-user3

Ответы [ 4 ]

20 голосов
/ 14 сентября 2009

Проект Gitolite предлагает эту функциональность. Это переписывание Gitosis в Perl. Его код можно найти на github

Когда я впервые написал этот ответ, он не поддерживал интеграцию gitweb или git-daemon, но теперь поддерживает.

3 голосов
/ 24 июля 2009

Этот скрипт, похоже, выполняет управление доступом для каждой ветви:

http://www.kernel.org/pub/software/scm/git/docs/howto/update-hook-example.txt

1 голос
/ 24 февраля 2009

Gitosis контролирует доступ к репозиториям, но не по веткам или коммитам. Таким образом, вы можете поместить мастер в репо, который имеет доступ только для чтения, и позволить пользователям перемещать свои отдельные ветки в другое репо (или по одному на пользователя, как вы говорите). Я не видел, чтобы кто-нибудь продлевал гитоз для более точного контроля зерна.

Если вам действительно нужно так сильно ограничить доступ своих пользователей и вы хотите использовать Git, то, возможно, вам следует только принимать патчи по электронной почте и сохранять репо только для чтения.

0 голосов
/ 23 сентября 2011

Gitolite поддерживает разрешение по именам веток или тегов.

В книге Pro GIT этот раздел подробно объясняет, как его настроить и настроить право доступа для каждой ветви. Поиск "Файл конфигурации и Правила контроля доступа" на этой странице.

...