Интересно, можно ли установить пользователя и группу сервера для каждого клонированного репозитория git.
Например, если репозиторий находился в каталоге:
/home/example/domains/example.com/public_html/
чем пользователь будет example, и группа будет также example. Но когда я клонирую или извлекаю через терминал (войдя в систему как root), файлы будут сохранены как root:root вместо пример:пример.
Как лучше всего предотвратить это без необходимости chown каждый раз при добавлении нового файла.
Так что же должно произойти?
- Перейдите в каталог другого пользователя
cd /home/example/
, как вы можете видеть, набравls -all
, что все файлы в этом каталоге принадлежат пользователю примера и группе примеров. - Перейдите в репозиторий git или создайте его, в этом примере я создал его по адресу
/home/example/domains/example.com/public_html/
. - Выполните там команду ls снова, и вы заметите, что пользователь и группа равны root:root, но я не хочу, чтобы это было так, как должно быть example:example.
Простое, но ручное решение было бы.
chown -R example:example /home/example/domains/example.com/public_html/
Только я ищу что-то более динамичное, также оно должно работать со всеми другими командами git, такими как pull, потому что, когда вы вытаскиваете новые коммиты из репозитория в свой локальный, они будут принадлежать root:root.