需要向不同的开发人员授予不同的权限:hg 子存储库是否有用



在一个使用 TortoiseHG 和 Bitbucket 版本存储共享存储库的大项目中,出于代码 IPR 安全原因,我需要限制开发人员对特定子文件夹的读取和修改的访问权限。换句话说,我需要开发人员可以克隆、读取、修改他们正在处理的文件以及这些文件的所有依赖项,这些文件希望都位于同一个子文件夹中。当他们推送修改时,我希望在下一个拉取操作后将它们全部放在主存储库中。主存储库只能由项目所有者访问,而不能由开发人员访问。

子存储库的概念对于获得此要求有用吗?如果是这种情况,我怎么能通过TortoiseHG和Bitbucket来设置它?

是的,你可以用子存储库来做到这一点。若要设置它,必须在 Bitbucket 中创建主存储库和子存储库作为同级存储库:

 https://bitbucket.org/{Username}/{SubRepo1}
 https://bitbucket.org/{Username}/{SubRepo2}
 https://bitbucket.org/{Username}/{MainRepo}

然后,MainRepo 中的 .hgsub 需要包含以下内容:

SubRepo1 = ../SubRepo1
SubRepo2 = ../SubRepo2

但请记住,项目所有者必须维护主存储库。它不会自动更新到子存储库的最新版本。

有关使用Mercurial/TortiouseHg进行设置,请参阅[官方文档]:https://www.mercurial-scm.org/wiki/Subrepository

最新更新