Как предотвратить запуск root git pull?

необходимо запретить root обновлять каталог git (рабочий). Рассуждения включает, но не ограничивается: профилактика файловой системы undersired изменения собственности.

ни один из крючков git, похоже,запретить a fetch/merge / pull, прежде чем это произойдет, подобно крюку предварительной фиксации. Или, по крайней мере, ничего, что я вижу здесь (или в man page): http://www.analysisandsolutions.com/code/git-hooks-summary-cheat-sheet.htm

мысли?

2 ответов


единственный способ, которым я видел это не разрешенным, но, по крайней мере," смягченным", был через оболочка для команды git:

все команды git пройти через эту оболочку, которая продолжается, если идентификатор пользователя не root.


изменить /root/.bashrc добавить новый каталог в начало PATH. Добавьте туда скрипт оболочки под названием git что тесты быть одной из нескольких команд только для чтения (show/status/log/rev-list и т. д.) и вызовов /usr/bin/git "$@" если команда приемлемо. Это предотвратит кого-либо из вашей команды от случайного запуска git pull как root. Если вы беспокоитесь о том, что они делают это намеренно, у вас есть большие проблемы...