Я нашел несколько сообщений на SO, говорящих о развертывании веб-проектов с git.
Большинство из них не слишком недавно, но, кажется, есть link, которые обычно оцениваются.Веб-проект с git - правами доступа и группами
В этом небольшом учебном пособии предлагается использовать функциональность GIT_WORK_TREE
, позволяющую отделить удаленное рабочее дерево от каталога веб-сервера.
Цель состоит в том, чтобы git push web
из местного хранилища внести изменения непосредственно в производство.
Что мне интересно, как мне управлять моими пользователями/группами на удаленном сервере, чтобы разрешить развертывание.
В основном 2 вопроса:
- Является ли this tutorial по-прежнему актуальна?
- Если да, то какой пользователь/группа должны иметь каталог
/var/www/my_project
?
Спасибо. Считаете ли вы, что это нормально, чтобы chown '/ var/www/my_project' в специальную группу, которую я предоставляю пользователям, которые должны публиковать сообщения? –
Проблема заключается не в группе, а в вашей umask, если файлы созданы 644, независимо от того, какую группу вы выберете для своих пользователей, они не смогут изменять эти файлы. Лучше использовать для всех того же пользователя, например. создайте пользователя «git», возможно, с оболочкой/etc/passwd как git-shell и попросите других пользователей открыть свой открытый ssh ключ, который вы сохраните в $ HOME/.ssh/authorized_keys этого пользователя git. Вы не потеряете авторство, поскольку оно не привязано к пользователю «толкателя». – mammadori