Использование gitosis для указания разрешений для каждой ветки?

StackOverflow https://stackoverflow.com/questions/579714

  •  06-09-2019
  •  | 
  •  

Вопрос

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

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

 project1-user1
 project1-user2
 project1-user3
 ...
 project5-user1
 project5-user2
 project5-user3
Это было полезно?

Решение

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

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

Другие советы

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

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

Кажется, этот сценарий выполняет контроль доступа к каждой ветке:

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

Гитолит довольно хорошо поддерживает разрешения по именам ветвей или тегов.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top