Я размещаю свой собственный репозиторий git на VPS. Допустим, мой пользователь Джон.
Я использую протокол ssh для доступа к своему репозиторию git, поэтому мой URL-адрес что-то вроде ssh://john@myserver.com/path/to/git/myrepo/
.
Root является владельцем всего, что находится под /path/to/git
Я пытаюсь дать Джону доступ на чтение / запись ко всему, что находится под /path/to/git/myrepo
Я пытался как chmod
и setfacl
для контроля доступа, но и не в состоянии точно так же: они применяются права рекурсивно (с нужными опциями) для всех текущих существующих подкаталогов из /path/to/git/myrepo
, но как только будет создан новый каталог, мой пользователь не может написать в новом каталоге.
Я знаю, что в git есть хуки, которые позволили бы мне повторно применять права после каждого коммита, но я начинаю думать, что иду по неправильному пути, потому что это кажется слишком сложным для очень простой цели.
В : Как мне установить свое право на доступ к Джону для любого пользователя /path/to/git/myrepo
и сделать его устойчивым к изменениям древовидной структуры?
Q2 : Если я должен сделать шаг назад, изменить общий подход, пожалуйста, скажите мне.
Изменить : На вопрос был дан ответ как есть, но это был неправильный вопрос. Правильный вопрос был бы «Как настроить пустой git-репозиторий на сервере для использования с ssh-доступом?». Смотрите мой собственный ответ.
g+s
. Конечно, вы должны сначала понять основыchmod
тоже.