跳到主要内容

Code Owners Review Settings

In the repository settings, you can configure the CODEOWNERS review behavior in more detail. You can find the following options by going to "Repository Settings → Pull Requests → CODEOWNERS Review Settings".

Setting Description

Review Counting Mode

Set how CODEOWNERS reviews count towards the minimum number of required reviews.

ModeDescription
Merge Counting ModeThe number of CODEOWNERS reviews is combined with the number of regular reviews
Independent Counting ModeCODEOWNERS reviews are not counted towards the total number of reviews, and regular reviews are counted separately

Code Owner Collaboration Approval Mode

Control the approval logic when multiple owners are assigned in CODEOWNERS rules.

ModeDescription
EnabledA rule is considered passed if any one of the Code Owners approves
DisabledAll Code Owners must approve for a rule to pass

Gate Pass Judgment Logic

The gate pass judgment is divided into two steps:

Step 1: Whether the CODEOWNERS rules pass

Determined by the "Collaboration Approval Mode":

Collaboration ApprovalRule Pass Condition
EnabledAny Owner approves
DisabledAll Owners approve

If the CODEOWNERS rules do not pass → The gate is directly denied, and the second step will not be checked.

Step 2: Whether the number of reviews meets the requirement

Determined by the "Counting Mode" (provided that the first step has passed):

Counting ModeSatisfy Condition
Merge CountingNumber of CODEOWNERS reviews + Number of regular reviews ≥ Minimum required reviews
Independent CountingNumber of regular reviews ≥ Minimum required reviews

Setting Combination Effects

Example Scenario

CODEOWNERS File:

*.js @user1 @user2

PR Changes: Modified app.js

Minimum Required Reviews: 2

Combination Effect Table

Collaboration ApprovalCounting ModeCODEOWNERS RuleReview SituationGate ResultExplanation
EnabledMerge Counting@user1 approvedCODEOWNERS 1 person + Regular 1 personPass1+1=2 ≥ 2
EnabledMerge Counting@user1 approvedCODEOWNERS 1 person + Regular 0 personNot Pass1+0=1 < 2
EnabledMerge Counting@user1 and @user2 both approvedCODEOWNERS 2 persons + Regular 0 personPass2+0=2 ≥ 2
EnabledIndependent Counting@user1 approvedRegular 2 personsPassRegular 2 ≥ 2
EnabledIndependent Counting@user1 approvedRegular 1 personNot PassRegular 1 < 2
DisabledMerge Counting@user1 and @user2 both approvedCODEOWNERS 2 persons + Regular 0 personPass2+0=2 ≥ 2
DisabledMerge Counting@user1 and @user2 both approvedCODEOWNERS 2 persons + Regular 1 personPass2+1=3 ≥ 2
DisabledMerge Counting@user1 approved, @user2 not approved-Not PassPremise not met, directly denied
DisabledIndependent Counting@user1 and @user2 both approvedRegular 2 personsPassRegular 2 ≥ 2
DisabledIndependent Counting@user1 approved, @user2 not approved-Not PassPremise not met, directly denied

Applicable Scenarios

CombinationApplicable Scenario
Collaboration + Merge CountingTeam collaboration, flexible review: CODEOWNERS rules per line require minimal number, combined with regular reviews
Collaboration + Independent CountingClear division of labor: CODEOWNERS rules pass, regular reviews need to meet the number requirement
Non-collaboration + Merge CountingStrict review for critical code: all Owners must approve, can be combined with regular reviews
Non-collaboration + Independent CountingCompletely separated: all Owners must approve, regular reviews also need to meet the number requirement