]> source.dussan.org Git - gitea.git/commitdiff
Fill head commit to in payload when notifying push commits for mirroring (#23215)
authorJason Song <i@wolfogre.com>
Sat, 4 Mar 2023 04:45:53 +0000 (12:45 +0800)
committerGitHub <noreply@github.com>
Sat, 4 Mar 2023 04:45:53 +0000 (23:45 -0500)
Just like what has been done when pushing manually:

https://github.com/go-gitea/gitea/blob/7a5af25592003ddc3017fcd7b822a3e02fc40ef6/services/repository/push.go#L225-L226

Before:

<img width="448" alt="image"
src="https://user-images.githubusercontent.com/9418365/222100123-cd4839d1-2d4d-45f7-b7a0-0cbc73162b44.png">

After:

<img width="448" alt="image"
src="https://user-images.githubusercontent.com/9418365/222100225-f3c5bb65-7ab9-41e2-8e39-9d84c23c352d.png">

---------

Co-authored-by: delvh <dev.lh@web.de>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
services/mirror/mirror_pull.go

index 126d2bf354682165cffc7fe3c19b38d456d1bf2c..60699294c18bd420931e79368198ac016ac3cd0c 100644 (file)
@@ -499,6 +499,13 @@ func SyncPullMirror(ctx context.Context, repoID int64) bool {
                        theCommits.Commits = theCommits.Commits[:setting.UI.FeedMaxCommitNum]
                }
 
+               if newCommit, err := gitRepo.GetCommit(newCommitID); err != nil {
+                       log.Error("SyncMirrors [repo: %-v]: unable to get commit %s: %v", m.Repo, newCommitID, err)
+                       continue
+               } else {
+                       theCommits.HeadCommit = repo_module.CommitToPushCommit(newCommit)
+               }
+
                theCommits.CompareURL = m.Repo.ComposeCompareURL(oldCommitID, newCommitID)
 
                notification.NotifySyncPushCommits(ctx, m.Repo.MustOwner(ctx), m.Repo, &repo_module.PushUpdateOptions{