Разрешения для каждого каталога в git - PullRequest
15 голосов
/ 29 июня 2010

Мы рассматриваем возможность переключения нашей VCS на git или subversion.Я бы предпочел переключиться на git, но у subversion есть хорошая функция, которую я не вижу в git: для контроля доступа к каталогам.

В настоящее время у нас есть репозитории project1, project2 в cvs с разными разрешениями.Нам бы хотелось иметь один репозиторий с двумя каталогами project1 и project2 с разными разрешениями.Это возможно с git, как с svn?

Я знаю о субмодулях, которые, вероятно, могли бы достичь этого, но цель для нас - сделать один коммит с изменениями в project1 & project2.

У нас в основном проблемы с IP, и мы хотим быть уверены, что некоторые люди не могут читать (а не просто толкать) некоторые каталоги.Итак, подходит ли ты для вызова или мне придется использовать git-svn?

Спасибо

1 Ответ

5 голосов
/ 29 июня 2010

Это возможно с центральным репо с доступом (push / pull), управляемым gitolite .
См его особенности .

Если вы комбинируете это с подмодулями (о которых вам известно), вы будете управлять только доступом по репо или по ветке и по-прежнему фиксировать как project1, так и project2 (с двумя фиксациями в случае субрепорации: см. this вопрос )

Если вы настаиваете на работе с одним репо (даже если вам необходимо установить набор данных, которые могут эволюционировать в соответствии с их собственным жизненным циклом, что должно сделать их хорошими кандидатами на модули), то функции gitolite действительно включают:

ограничения на основе имени файла / каталога

В дополнение к ограничениям, основанным на имени ветви, gitolite также позволяет вам ограничивать, какие файлы или каталоги могут быть вовлечены в передаваемые изменения

dpk упоминает в комментариях, что эта последняя особенность (ограничение имени файла / каталога) подробно описана в файле Gitolite conf/example.conf.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...