像 SQL 一样创建 Git 视图

像 SQL 一样创建 Git 视图

是否可以像在 SQL 中一样创建 Git 存储库视图?我想授予某人访问存储库的权限,但仅限于某些文件类型,例如 CSS;但是,我想拒绝访问 PHP 和 JavaScript 文件。

答案1

这个问题(部分)回答了这个问题:Git:访问控制?实践中如何做

您无法通过分支或其他方式进行控制。Git 下载整个存储库。就这样。

这(始终下载整个 repo)是 git 中的一个基本设计决策,没有办法解决这个问题。

如果您只想提供读取权限,则可以使用一些不同的系统,例如,进行一些常规作业将文件镜像到 Web 服务器等,以便可以在那里查看和下载它们。

如果您想提供写访问权限,但仍限制对其他部分的读访问权限,那么可能无法绕过拆分存储库(或实施一些涉及多个存储库和推送与拉取的复杂同步方案)。

如果你想限制写权限,但不介意授予所有内容的读权限,则可以使用git 钩子. 您可能还想考虑吉托莱特

Gitolite 是 git 之上的访问控制层。以下是“执行摘要”:

[...]

控制对许多 git 存储库的访问

在 repo 级别控制读取访问

在分支/标签/文件/目录级别控制写访问

相关内容