Search code examples
azure-devopsrepositorybranchazure-repos

Enforce naming/folder pattern while creating branch in Azure Repos


I want to enforce a policy at my azure repository where branch name should start only with feature/* OR hotfix/* etc. If any other name is given then it should not be possible to create that named branch.

so feature/test should be created but test should not.

Can you please help for it?

Thanks


Solution

  • I am afraid that there is no out-of-box method can enforce a policy at repo name.

    For a workaround, you can restrict users to only create branches under feature by setting Repo permissions.

    You can use tf command to achieve the goal:

    1.Block the Create Branch permission at the repository root for the project's contributors.

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

    2.Allow users/groups to create branches under feature.

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

    If you want to limit users, you can change /group: -> /user:

    For more detailed info, you can refer to this doc: Require branches to be created in folders