diff options
Diffstat (limited to 'java/com/google/gerrit/server/submit/SubmitStrategy.java')
-rw-r--r-- | java/com/google/gerrit/server/submit/SubmitStrategy.java | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/java/com/google/gerrit/server/submit/SubmitStrategy.java b/java/com/google/gerrit/server/submit/SubmitStrategy.java index bdda3fc5dd..c7b322e118 100644 --- a/java/com/google/gerrit/server/submit/SubmitStrategy.java +++ b/java/com/google/gerrit/server/submit/SubmitStrategy.java @@ -22,6 +22,7 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.common.collect.Sets; import com.google.common.flogger.FluentLogger; +import com.google.gerrit.entities.BooleanProjectConfig; import com.google.gerrit.entities.BranchNameKey; import com.google.gerrit.entities.Change; import com.google.gerrit.entities.SubmissionId; @@ -217,11 +218,18 @@ public abstract class SubmitStrategy { projectCache.get(destBranch.project()).orElseThrow(illegalState(destBranch.project())); this.mergeSorter = new MergeSorter(caller, rw, alreadyAccepted, canMergeFlag, queryProvider, incoming); + Set<RevCommit> uninterestingBranchTips; + if (project.is(BooleanProjectConfig.CREATE_NEW_CHANGE_FOR_ALL_NOT_IN_TARGET)) { + RevCommit initialTip = mergeTip.getInitialTip(); + uninterestingBranchTips = initialTip == null ? Set.of() : Set.of(initialTip); + } else { + uninterestingBranchTips = alreadyAccepted; + } this.rebaseSorter = new RebaseSorter( caller, rw, - mergeTip.getInitialTip(), + uninterestingBranchTips, alreadyAccepted, canMergeFlag, queryProvider, |