From 6894f936a645409f67cabc672424a9e7d8888b92 Mon Sep 17 00:00:00 2001 From: Patrick Knight Date: Wed, 4 Dec 2024 12:11:33 -0600 Subject: [PATCH] Update available-rules-for-rulesets.md (#53268) Co-authored-by: Vanessa Co-authored-by: Melanie Yarbrough <11952755+myarb@users.noreply.github.com> --- .../about-merge-methods-on-github.md | 4 ++++ .../managing-rulesets/available-rules-for-rulesets.md | 7 +++++++ data/features/repo-rules-merge-type.yml | 7 +++++++ 3 files changed, 18 insertions(+) create mode 100644 data/features/repo-rules-merge-type.yml diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/about-merge-methods-on-github.md b/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/about-merge-methods-on-github.md index 9d596d630a..5833fbb4ac 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/about-merge-methods-on-github.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/about-merge-methods-on-github.md @@ -19,6 +19,10 @@ shortTitle: About merge methods > [!NOTE] > When using the merge queue, you no longer get to choose the merge method, as this is controlled by the queue. {% data reusables.pull_requests.merge-queue-references %} +{% ifversion repo-rules-merge-type -%} +> +> Merge methods set on the repository that conflict with the merge method rule will prevent merging. For example if you do not allow rebase merging for the repository, and the merge rule only allows rebase on a branch, that merge will not be possible. For more information, see "[AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets#require-a-pull-request-before-merging)." +{%- endif %} {% endif %} diff --git a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets.md b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets.md index 9c45b9936f..0c152b0008 100644 --- a/content/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets.md +++ b/content/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/available-rules-for-rulesets.md @@ -130,6 +130,13 @@ For complex pull requests that require many reviews, requiring an approval from Optionally, you can require all comments on the pull request to be resolved before it can be merged to a branch. This ensures that all comments are addressed or acknowledged before merge. +{% ifversion repo-rules-merge-type %} +> [!NOTE] +> Allowed merge method is currently in public preview, the rule is currently non-bypassable, and subject to change. + +Optionally, you can require a merge type of merge, squash or rebase. This means the targeted branches may only be merged based on the allowed type. Additionally if the repository has disabled a merge method and the ruleset required a different method, the merge will be blocked. For more information, see "[AUTOTITLE](/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/about-merge-methods-on-github)." +{% endif %} + ## Require status checks to pass before merging Required status checks ensure that all required CI tests are passing before collaborators can make changes to a branch or tag targeted by your ruleset. Required status checks can be checks or statuses. For more information, see "[AUTOTITLE](/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks)." diff --git a/data/features/repo-rules-merge-type.yml b/data/features/repo-rules-merge-type.yml new file mode 100644 index 0000000000..8a96053173 --- /dev/null +++ b/data/features/repo-rules-merge-type.yml @@ -0,0 +1,7 @@ +# Reference: #53268 +# Public preview for merge method rules + +versions: + fpt: '*' + ghec: '*' + ghes: '>=3.18'