在使用源代码管理时,我如何才能对源代码的不同部分的用户组具有不同的权限?

While using source control, how can I have different permissions for groups of users for different parts of the source code?

我对应用源代码管理有疑问。我尝试了很多东西,但我无法弄清楚。在使用源代码管理时,我希望能够对源代码的不同部分的用户组具有不同的权限。

我们曾经有一个包含整个 (Visual Studio) 解决方案和所有项目的大型存储库。但是这次我们需要能够管理源代码不同部分的权限(每个项目)。这对于保护知识分子的某些部分很重要 属性.

提供一点上下文说明:

我尝试了什么:

很多事情,但最接近可行的解决方案是:

此设置在拉动 CombinedRepo 时有效。使用 VS 的子模块。我可以测试、调试和更改等等

但是,此设置存在以下问题:

在子模块中进行更改后,必须切换到该子模块才能成功提交更改。

(此信息取自https://jonasr.app/2020/04/vs-git-subm/

Visual Studio 看到在子模块文件夹中所做的更改,但未能提交它们。

要解决此问题,请转至团队资源管理器 - 管理连接 - 本地 Git 存储库 - 添加,浏览至子模块文件夹并使用添加进行确认。双击创建的本地存储库将其打开。

现在您可以提交更改并将它们推送到远程源,就像您在原始子模块存储库中所做的那样。

然后再次打开包含子模块文件夹的本地存储库,转到更改并提交它们以在主模块中包含更改的子模块状态。

这里有一些功能请求链接,您可以关注它们以获取最新消息。

此外,如果您只想限制用户或团队成员提交代码,我们可以设置branch policy and disable the branch permission Bypass policies when pushing。然后所有用户都需要创建拉取请求来推送提交,您可以检查提交并批准拉取请求。

更新

I want to be able to have different permissions for groups of users for different parts of the source code.

感谢 Stefan 的分享。

如果我们使用 TFVC 存储库,我们可以为用户组配置 folder/file 权限。查看下图。