diff --git a/routers/repo/pull.go b/routers/repo/pull.go index e4fd19ee49872..64bd8a03b8c7c 100644 --- a/routers/repo/pull.go +++ b/routers/repo/pull.go @@ -356,6 +356,16 @@ func PrepareViewPullInfo(ctx *context.Context, issue *models.Issue) *git.Compare return nil } defer baseGitRepo.Close() + + if !baseGitRepo.IsBranchExist(pull.BaseBranch) { + ctx.Data["IsPullRequestBroken"] = true + ctx.Data["BaseTarget"] = pull.BaseBranch + ctx.Data["HeadTarget"] = pull.HeadBranch + ctx.Data["NumCommits"] = 0 + ctx.Data["NumFiles"] = 0 + return nil + } + var headBranchExist bool var headBranchSha string // HeadRepo may be missing