From 479370e5c9e588119ab222cd12fa619620f734b3 Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Thu, 19 Feb 2026 12:06:38 -0800 Subject: [PATCH] don't return if get force push commits failure --- services/pull/comment.go | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/services/pull/comment.go b/services/pull/comment.go index 0ad0419441..1c86517afb 100644 --- a/services/pull/comment.go +++ b/services/pull/comment.go @@ -12,6 +12,7 @@ import ( user_model "code.gitea.io/gitea/models/user" "code.gitea.io/gitea/modules/gitrepo" "code.gitea.io/gitea/modules/json" + "code.gitea.io/gitea/modules/log" ) // getCommitIDsFromRepo get commit IDs from repo in between oldCommitID and newCommitID @@ -63,9 +64,15 @@ func CreatePushPullComment(ctx context.Context, pusher *user_model.User, pr *iss var data issues_model.PushActionContent data.CommitIDs, err = getCommitIDsFromRepo(ctx, pr.BaseRepo, oldCommitID, newCommitID, pr.BaseBranch) if err != nil { - return nil, err + // For force-push events, a missing/unreachable old commit should not prevent + // deleting stale push comments or creating the force-push timeline entry. + if !isForcePush { + return nil, err + } + log.Error("getCommitIDsFromRepo: %v", err) } // It maybe an empty pull request. Only non-empty pull request need to create push comment + // for force push, we always need to delete the old push comment so don't return here. if len(data.CommitIDs) == 0 && !isForcePush { return nil, nil //nolint:nilnil // return nil because no comment needs to be created }