要求在文件夹中创建分支

Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020

当很多人在存储库中协作时,分支的数量和名称可以快速失控。 分层分支文件夹是组织结构的有效方法。 Azure DevOps 和 Visual Studio 默认视为 / 文件夹分隔符并自动折叠文件夹。 这样,就不必查看每个分支即可找到要查找的分支。 你也不必依靠每个人来弄清楚。 Azure Repos 可以强制正确使用分支文件夹。

规划

确定要允许的文件夹结构。 例如,我们将存储库配置为强制实施以下规则:

  • 只有 main 可以存在于存储库根目录中。
  • 允许所有用户在feature/users/文件夹下创建分支。
  • 管理员可以在 release/ 文件夹下创建分支。

注释

有关分支命名策略的更多示例和信息,请参阅 采用 Git 分支策略

先决条件

在开始之前,请确保具有以下项:

要求 DESCRIPTION
Team Foundation 命令行工具 你需要 Team Foundation 版本控制命令 (tf.exe)。
Azure DevOps 信息 需要 Azure DevOps 组织的 URL、项目的名称和存储库的名称。 对于此示例: https://dev.azure.com/fabrikam-fiberFabrikamProjectFabrikamRepo
适当的权限 需要 Azure DevOps 项目中的管理权限才能修改 Git 存储库权限。
身份验证 确保登录到 Azure DevOps 或具有缓存的凭据,从而避免在命令执行期间出现身份验证提示。

注释

默认情况下,此命令 tf.exe 随 Visual Studio 一起安装。 可以通过 开发人员命令提示符访问它。 有关更多选项,请下载 团队资源管理器

强制实施权限

在开发人员命令提示符下,在 “启动>Visual Studio>开发人员命令提示符”下运行以下命令。 每个命令都包含对其执行操作的说明。 如果未缓存令牌,例如,通过登录到 Azure DevOps Services Web 门户,系统会提示你登录。

  1. 在项目的参与者的存储库根目录中阻止“创建分支”权限:
tf git permission /deny:CreateBranch /group:[FabrikamProject]\Contributors /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo
  1. 允许参与者在featureusers下创建分支:a。 特征:

    tf git permission /allow:CreateBranch /group:[FabrikamProject]\Contributors /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:feature
    

    b. 用户:

    tf git permission /allow:CreateBranch /group:[FabrikamProject]\Contributors /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:users
    
  2. 允许管理员在 release 下创建分支:

tf git permission /allow:CreateBranch /group:"[FabrikamProject]\Project Administrators" /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:release
  1. 允许管理员创建一个名为main的分支,以防万一不慎删除。
tf git permission /allow:CreateBranch /group:"[FabrikamProject]\Project Administrators" /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:main

注释

有关详细信息,请参阅 tf git 权限。 还可以通过命令行运行 tf git /?tf git permission /? 来访问这些命令的帮助。

重命名旧分支

  1. 在 Web 上打开存储库, 然后选择 “分支” 视图

  2. 找到现有分支。 如果未看到,可能需要在“ 所有 ”选项卡上查看。

  3. 选择其上下文菜单( ... 按钮),然后选择 “新建分支”。

    创建分支菜单

  4. 键入分支的新名称,例如 users/frank/readme-fix。 选择 “创建分支”。

    创建新分支

  5. 选择旧分支名称旁边的红色垃圾桶图标将其删除。

    删除旧分支

注释

任何自定义权限或分支策略都不迁移。