From 8420c1bf4c46a59973d30af5114216918d0f60cd Mon Sep 17 00:00:00 2001 From: "Ing. Jaroslav Šafka" Date: Wed, 13 Jul 2022 10:22:51 +0200 Subject: Fix checks in PR for empty commits #19603 (#20290) * Fixes issue #19603 (Not able to merge commit in PR when branches content is same, but different commit id) * fill HeadCommitID in PullRequest * compare real commits ID as check for merging * based on @zeripath patch in #19738 --- models/issues/pull.go | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'models') diff --git a/models/issues/pull.go b/models/issues/pull.go index 52b9596889..f96b03445e 100644 --- a/models/issues/pull.go +++ b/models/issues/pull.go @@ -122,6 +122,7 @@ const ( PullRequestStatusManuallyMerged PullRequestStatusError PullRequestStatusEmpty + PullRequestStatusAncestor ) // PullRequestFlow the flow of pull request @@ -423,6 +424,11 @@ func (pr *PullRequest) IsEmpty() bool { return pr.Status == PullRequestStatusEmpty } +// IsAncestor returns true if the Head Commit of this PR is an ancestor of the Base Commit +func (pr *PullRequest) IsAncestor() bool { + return pr.Status == PullRequestStatusAncestor +} + // SetMerged sets a pull request to merged and closes the corresponding issue func (pr *PullRequest) SetMerged(ctx context.Context) (bool, error) { if pr.HasMerged { -- cgit v1.2.3