【发布时间】:2012-10-10 16:09:13
【问题描述】:
需要防止 root 更新 git(工作)目录。推理包括但不限于:防止不希望的文件系统所有权更改。
似乎没有一个 git 钩子可以在发生之前阻止 fetch/merge/pull,类似于 pre-commit 钩子。或者至少,我在这里(或手册页)没有看到: http://www.analysisandsolutions.com/code/git-hooks-summary-cheat-sheet.htm
想法?
【问题讨论】:
-
“prevent root […]”——我认为这是不可能的。
-
为什么?您要避免的实际问题是什么?如果您试图阻止存储库中的文件归 root 所有,请不要在以 root 身份登录时拉取。
-
@meagar 已经在这样做了。唉,在许多人拥有 root/sudo 访问权限的团队环境中。想要特别阻止人们以 root 身份登录并无意中更改他们不应该更改的内容。有时人们会忘记旧习惯(我们过去需要 root/sudo privs 才能进行更新,但现在不再需要了),以 root 身份登录,并做他们不应该做的事情。
-
@poke 理论上可以放一个 'if [ "$(id -u)" == "0" ];然后退出 1' 检查预取钩子...如果存在预取钩子。
-
我认为答案是开始惩罚粗心使用 root 访问权限的人。第一步是撤销 root 访问权限...
标签: git permissions githooks git-pull ownership