Установка 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.