Git钩子不允许在顶层创建目录

Git钩子不允许在顶层创建目录,git,access-control,githooks,Git,Access Control,Githooks,防止用户停止顶级目录创建的更好方法可能是在推送或直接创建文件时?您可以尝试 pre-commit钩子在您输入提交消息之前首先运行。 它用于检查即将提交的快照,查看是否忘记了什么,确保测试运行,或者检查代码中需要检查的内容。从这个钩子中退出非零将中止提交,尽管您可以使用git commit--no-verify来绕过它 查看查看在检查索引内容方面可以做些什么。如果您确实希望对进入主存储库的内容进行控制,不要让其他人推它。相反,让经理从其他用户那里拉过来,检查他们的更改,确保他们没有违反策略。这个答

防止用户停止顶级目录创建的更好方法可能是在推送或直接创建文件时?

您可以尝试

pre-commit
钩子在您输入提交消息之前首先运行。
它用于检查即将提交的快照,查看是否忘记了什么,确保测试运行,或者检查代码中需要检查的内容。从这个钩子中退出非零将中止提交,尽管您可以使用git commit--no-verify来绕过它


查看查看在检查索引内容方面可以做些什么。

如果您确实希望对进入主存储库的内容进行控制,不要让其他人推它。相反,让经理从其他用户那里拉过来,检查他们的更改,确保他们没有违反策略。

这个答案是补充


由于每个开发人员都应该有他/她自己的克隆(他/她自己的工作存储库),因此您可以实际施加的唯一控制是在推送发布存储库期间(或在您拉取他们的更改期间)允许或不允许。这可以使用
update
pre-receive
完成

1)
pre-commit
钩子可以通过“git-commit--no-verify”绕过


我不知道您是否想施加任何现成的解决方案支持约束,但我认为可以扩展示例钩子(git源代码中的
contrib/hooks
)和(管理对git存储库的访问的工具)来支持它;两者都可以执行基于路径/基于差异的约束,例如,只允许更改给定的配置子目录。

添加得非常好+1.由于我刚刚安装了一个gitolite,我将看看它如何支持这样的约束。