我们目前有一个SVN存储库的设置,并希望切换到GIT,但我们目前不确定什么确切的GIT设置将为我们工作。
我们目前正在使用SVN(w / Authz)+ Apache(w / WebDAV和LDAP)。 我们使用Authz进行SVN,因为我们需要对存储库中的子目录进行良好的访问控制(不是每个用户都应该读/写所有的目录)。
有没有办法移植这个Authz权限文件,以便GIT存储库使用这个权限控制? 或者有没有其他的方法可以控制GIT单个文件的权限? 请记住,我们已经安装了LDAP,所以权限文件应该简单地将用户名映射到授权目录。
看起来,你可能已经做了一个跳跃git(顺便提一句,这不是一个缩写),因为git的数据存储和访问控制模型与SVN完全不同。
基于每个存储库的访问控制并不难; 虽然我没有任何configuration示例,但是如果您使用HTTPS访问,则不应该很难模拟,因为身份validation和授权模型与SVN非常相似。 对于每个分支机构的访问控制,我知道可以使用gitolite来完成(虽然这是一个默认的SSH访问系统,但可能会用一些想法来破坏掉HTTPS)。
从理论上讲,你可能会用基于path的访问来做一些巧妙的操作,但是你真的无法做到读访问控制,因为整个git模型是在一个完整的repo中提交的,所以你可以阻止人们看到回购中的所有数据。
没有运气。 你不能用任何单一的存储库 (与path相反)