2011-12-17 2 views
5

Если Mercurial does not track file permissions по умолчанию, как он принимает решение о разрешениях для любых создаваемых файлов/каталогов?Разрешения по умолчанию, когда Mercurial создает файлы

Использует ли он umask? Если нет, что он использует?

У меня есть read in the mail list следующее:

Mercurial uses the mode of the .hg/store directory to compute a mask 

, но это кажется немного произвольным (если есть какое-то объяснение за ней, я хотел бы услышать его). Это объясняется в документации?

ответ

2

Там не кажется, любое полное объяснение, только упоминание о нем в «How To Handle Multiple Committers» страницы:

Если вы используете версию Mercurial старше 1.0, очень важно, что для каждого пользователя umask будет установлен в 002 или что-то подобное. Если он установлен в 022, привилегии групповой записи будут замаскированы для файлов, создаваемых пользователями, в результате чего другие пользователи не смогут их модифицировать.

Вы можете изменить настройки по умолчанию umask для пользователя путем редактирования их ~/.profile и добавив строку ...

umask 002 

В качестве альтернативы, вы можете редактировать /etc/profile изменять системные настройки.
Изменение /etc/profile не будет работать, если люди проведут проверку с помощью команды hg, так как этот файл не читается неинтерактивными оболочками, /etc/bash.bashrc - лучшее место для установки общесистемных настроек.

В противном случае с Mercurial 1.0 разрешение по умолчанию наследуется от .hg/store.

Смежные вопросы