From 8faa38568bd376c3c0f23a365302b646cf62f4b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Br=C3=BCckner?= Date: Sun, 29 Oct 2023 01:54:58 +0100 Subject: [PATCH] Use GitLab's squash_commit_sha when available (#27824) Before this PR, the PR migration code populates Gitea's MergedCommitID field by using GitLab's merge_commit_sha field. However, that field is only populated when the PR was merged using a merge strategy. When a squash strategy is used, squash_commit_sha is populated instead. Given that Gitea does not keep track of merge and squash commits separately, this PR simply populates Gitea's MergedCommitID by using whichever field is present in the GitLab API response. --- services/migrations/gitlab.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/services/migrations/gitlab.go b/services/migrations/gitlab.go index f626036254..53540899a6 100644 --- a/services/migrations/gitlab.go +++ b/services/migrations/gitlab.go @@ -566,6 +566,11 @@ func (g *GitlabDownloader) GetPullRequests(page, perPage int) ([]*base.PullReque closeTime = pr.UpdatedAt } + mergeCommitSHA := pr.MergeCommitSHA + if mergeCommitSHA == "" { + mergeCommitSHA = pr.SquashCommitSHA + } + var locked bool if pr.State == "locked" { locked = true @@ -608,7 +613,7 @@ func (g *GitlabDownloader) GetPullRequests(page, perPage int) ([]*base.PullReque Closed: closeTime, Labels: labels, Merged: merged, - MergeCommitSHA: pr.MergeCommitSHA, + MergeCommitSHA: mergeCommitSHA, MergedTime: mergeTime, IsLocked: locked, Reactions: g.awardsToReactions(reactions),