]> source.dussan.org Git - gitea.git/commitdiff
Avoid amending the Rebase and Fast-forward merge if there is no message template...
authorwxiaoguang <wxiaoguang@gmail.com>
Mon, 10 Jul 2023 08:12:50 +0000 (16:12 +0800)
committerGitHub <noreply@github.com>
Mon, 10 Jul 2023 08:12:50 +0000 (10:12 +0200)
Related #22669. Close #25177

After the fix:

![image](https://github.com/go-gitea/gitea/assets/2114189/0e900927-ea72-4f8f-bde6-5ed927cb02f4)

Co-authored-by: Giteabot <teabot@gitea.io>
models/repo/git.go
services/pull/merge.go

index 7ae88058dc861b5699fb144549c86f66e5c41796..c1af7ee9608b43e35a41f55e34c2083502ede543 100644 (file)
@@ -11,7 +11,7 @@ type MergeStyle string
 const (
        // MergeStyleMerge create merge commit
        MergeStyleMerge MergeStyle = "merge"
-       // MergeStyleRebase rebase before merging
+       // MergeStyleRebase rebase before merging, and fast-forward
        MergeStyleRebase MergeStyle = "rebase"
        // MergeStyleRebaseMerge rebase before merging with merge commit (--no-ff)
        MergeStyleRebaseMerge MergeStyle = "rebase-merge"
index 85bb90b8538994748f5d5159b85b9640759e281a..416c74446351d13aa1a73fcd0544e33ae672f9b0 100644 (file)
@@ -110,6 +110,11 @@ func getMergeMessage(ctx context.Context, baseGitRepo *git.Repository, pr *issue
                }
        }
 
+       if mergeStyle == repo_model.MergeStyleRebase {
+               // for fast-forward rebase, do not amend the last commit if there is no template
+               return "", "", nil
+       }
+
        // Squash merge has a different from other styles.
        if mergeStyle == repo_model.MergeStyleSquash {
                return fmt.Sprintf("%s (%s%d)", pr.Issue.Title, issueReference, pr.Issue.Index), "", nil