有没有办法限制团队中的新开发人员可以从 Github 存储库中提取的文件?我可能不希望新开发人员能够查看/克隆整个项目。
问问题
383 次
2 回答
1
git 存储库不是文件存储,而是代码、补丁和元数据的数据库。
您可以过滤从存储库中提取的文件,但是,没有什么可以阻止访问此子目录中的其他文件。
在 Git 世界之外,要拥有这样的目录 ACL 控制,Subversion 还是很有趣的: http ://svnbook.red-bean.com/en/1.7/svn.serverconfig.pathbasedauthz.html
在 Git 世界里,你可以做的是:
- 拥有多个 Git 存储库,一个由项目组件组成。因此,您将能够让您的开发人员访问仅包含相关代码的小型存储库。
- 将项目的这些存储库组织到带有子存储库的主存储库中。Git 有一个功能可以实现这一点,称为子模块 - http://git-scm.com/book/en/Git-Tools-Submodules
要从当前存储库中准备这些子模块,您可以使用该git filter-branch
命令。请参阅问题https://stackoverflow.com/a/12515629/1930997来实现这一点。
于 2013-09-12T13:38:59.283 回答
0
不,git 不跟踪任何权限。只有一种方法可以控制对 git 存储库的访问:使用 unix 权限系统。
这基本上意味着 git repo 只有 3 个可能的访问级别: - 完全没有 - 完全读取权限 - 完全写入权限
CodeGnome 建议使用子模块。这些将允许您将一些代码放入单独的存储库中,该存储库可以具有与主存储库不同的权限。
于 2013-09-12T13:39:22.123 回答