az repos policy merge-strategy

Manage merge strategy policy.

Commands

az repos policy merge-strategy create Create merge strategy policy.
az repos policy merge-strategy update Update merge strategy policy.

az repos policy merge-strategy create

Create merge strategy policy.

az repos policy merge-strategy create --blocking {false, true}
--branch
--enabled {false, true}
--repository-id
[--allow-no-fast-forward {false, true}]
[--allow-rebase {false, true}]
[--allow-rebase-merge {false, true}]
[--allow-squash {false, true}]
[--branch-match-type {exact, prefix}]
[--detect {false, true}]
[--org]
[--project]
[--use-squash-merge {false, true}]

Required Parameters

--blocking

Whether the policy should be blocking or not.

accepted values: false, true
--branch

Branch on which this policy should be applied. For example: master.

--enabled

Whether the policy is enabled or not.

accepted values: false, true
--repository-id

Id of the repository on which to apply the policy.

Optional Parameters

--allow-no-fast-forward

Basic merge (no fast-forward) - Preserves nonlinear history exactly as it happened during development.

accepted values: false, true
--allow-rebase

Rebase and fast-forward - Creates a linear history by replaying the source branch commits onto the target without a merge commit.

accepted values: false, true
--allow-rebase-merge

Rebase with merge commit - Creates a semi-linear history by replaying the source branch commits onto the target and then creating a merge commit.

accepted values: false, true
--allow-squash

Squash merge - Creates a linear history by condensing the source branch commits into a single new commit on the target branch.

accepted values: false, true
--branch-match-type

Determines how the branch argument is used to apply a policy. If value is 'exact', the policy will be applied on a branch which has an exact match on the --branch argument. If value is 'prefix' the policy is applied across all branch folders that match the prefix provided by the --branch argument.

accepted values: exact, prefix
default value: exact
--detect

Automatically detect organization.

accepted values: false, true
--org --organization

Azure DevOps organization URL. You can configure the default organization using az devops configure -d organization=ORG_URL. Required if not configured as default or picked up via git config. Example: https://dev.azure.com/MyOrganizationName/.

--project -p

Name or ID of the project. You can configure the default project using az devops configure -d project=NAME_OR_ID. Required if not configured as default or picked up via git config.

--use-squash-merge

Whether to squash merge always. This option does not work for allowing other merge types.

accepted values: false, true

az repos policy merge-strategy update

Update merge strategy policy.

az repos policy merge-strategy update --id
[--allow-no-fast-forward {false, true}]
[--allow-rebase {false, true}]
[--allow-rebase-merge {false, true}]
[--allow-squash {false, true}]
[--blocking {false, true}]
[--branch]
[--branch-match-type {exact, prefix}]
[--detect {false, true}]
[--enabled {false, true}]
[--org]
[--project]
[--repository-id]
[--use-squash-merge {false, true}]

Required Parameters

--id --policy-id

ID of the policy.

Optional Parameters

--allow-no-fast-forward

Basic merge (no fast-forward) - Preserves nonlinear history exactly as it happened during development.

accepted values: false, true
--allow-rebase

Rebase and fast-forward - Creates a linear history by replaying the source branch commits onto the target without a merge commit.

accepted values: false, true
--allow-rebase-merge

Rebase with merge commit - Creates a semi-linear history by replaying the source branch commits onto the target and then creating a merge commit.

accepted values: false, true
--allow-squash

Squash merge - Creates a linear history by condensing the source branch commits into a single new commit on the target branch.

accepted values: false, true
--blocking

Whether the policy should be blocking or not.

accepted values: false, true
--branch

Branch on which this policy should be applied. For example: master.

--branch-match-type

Determines how the branch argument is used to apply a policy. If value is 'exact', the policy will be applied on a branch which has an exact match on the --branch argument. If value is 'prefix' the policy is applied across all branch folders that match the prefix provided by the --branch argument.

accepted values: exact, prefix
--detect

Automatically detect organization.

accepted values: false, true
--enabled

Whether the policy is enabled or not.

accepted values: false, true
--org --organization

Azure DevOps organization URL. You can configure the default organization using az devops configure -d organization=ORG_URL. Required if not configured as default or picked up via git config. Example: https://dev.azure.com/MyOrganizationName/.

--project -p

Name or ID of the project. You can configure the default project using az devops configure -d project=NAME_OR_ID. Required if not configured as default or picked up via git config.

--repository-id

Id of the repository on which to apply the policy.

--use-squash-merge

Whether to squash merge always. This option does not work for allowing other merge types.

accepted values: false, true