Установка umask в Git / Gitolite
Я настроил Git и Gitolite, и в какой-то момент я помню, что видел настройку "umask" в одном из файлов конфигурации. Устанавливает ли это разрешения для всех файлов, которые я синхронизирую с помощью Git? Это именно то, что мне нужно. Где я могу его найти?
1 ответов
на настройки umask в Gitolite есть ли для изменения umask для вновь созданных репозиториев (а не о файлах, управляемых в версиях этими репозиториями).
См.gitolite'е.rc doc:
$REPO_UMASK
, восьмеричный, по умолчанию 0077по умолчанию
UMASK
что использует gitolite делает все репозитории и их содержимоеrwx------
разрешения. Люди, которые хотят запустить gitweb, понимают, что этого не будет.правильный способ справиться с этим, чтобы дать этой переменной значение типа
0027
(обратите внимание на синтаксис: требуется ведущий 0), а затем сделайте пользователя, запускающего веб-сервер (apache,www-data
, что угодно) член группы "git".если вы уже установили gitolite, то существующие файлы должны быть исправлены вручную (для umask или
0027
, что быchmod -R g+rX
). Это потому чтоumask
влияет только на разрешения для вновь созданных файлов, не существующих те.
эти настройки аналогичны тем, которые используются при создании непосредственно репозитория git (без gitolite):
core.sharedRepository
, когда
group
(илиtrue
), репозиторий доступен для совместного использования несколькими пользователями в группе (убедитесь, что все файлы и объекты доступны для групповой записи).
Когдаall
(илиworld
илиeverybody
), репозиторий будет читаться всеми пользователями, в дополнение кgroup-shareable
.
Когдаumask
(илиfalse
), то git будет использовать разрешения, сообщаетumask
.
Смотрите также на "как я могу поделиться репозиторием Git с несколькими пользователями на машине?" дополнительные.
когда у вас есть конфликты между платформами относительно разрешений, у вас также есть возможность "проинструктировать git игнорировать изменения прав доступа к файлам" (git config core.fileMode false
).
Update: этот ответ охватывает gitolite 2. С gitolite 3 Настройка изменилась с $REPO_UMASK
просто $UMASK
.