From 1270e2ad85e7e700bb13492586c6e3fe8499b0d5 Mon Sep 17 00:00:00 2001 From: guillep2k <18600385+guillep2k@users.noreply.github.com> Date: Sat, 23 Nov 2019 23:08:40 -0300 Subject: [PATCH] Create PR on Current Repository by Default (#8670) (#9141) * 'update' * Send push tag event when release created * send tag create event while release created in UI * update to go v1.13 * fix gofmt error * fix #8576 create pull request on current repository by default --- routers/repo/compare.go | 28 ++++++++++++++++++++++++++++ templates/repo/diff/compare.tmpl | 7 ++++++- templates/repo/issue/list.tmpl | 2 +- 3 files changed, 35 insertions(+), 2 deletions(-) diff --git a/routers/repo/compare.go b/routers/repo/compare.go index 2b66d3818d..9c41a8af3c 100644 --- a/routers/repo/compare.go +++ b/routers/repo/compare.go @@ -346,6 +346,30 @@ func PrepareCompareDiff( return false } +// parseBaseRepoInfo parse base repository if current repo is forked. +// The "base" here means the repository where current repo forks from, +// not the repository fetch from current URL. +func parseBaseRepoInfo(ctx *context.Context, repo *models.Repository) error { + if !repo.IsFork { + return nil + } + if err := repo.GetBaseRepo(); err != nil { + return err + } + if err := repo.BaseRepo.GetOwnerName(); err != nil { + return err + } + baseGitRepo, err := git.OpenRepository(models.RepoPath(repo.BaseRepo.OwnerName, repo.BaseRepo.Name)) + if err != nil { + return err + } + ctx.Data["BaseRepoBranches"], err = baseGitRepo.GetBranches() + if err != nil { + return err + } + return nil +} + // CompareDiff show different from one commit to another commit func CompareDiff(ctx *context.Context) { headUser, headRepo, headGitRepo, compareInfo, baseBranch, headBranch := ParseCompareInfo(ctx) @@ -353,6 +377,10 @@ func CompareDiff(ctx *context.Context) { return } defer headGitRepo.Close() + if err := parseBaseRepoInfo(ctx, headRepo); err != nil { + ctx.ServerError("parseBaseRepoInfo", err) + return + } nothingToCompare := PrepareCompareDiff(ctx, headUser, headRepo, headGitRepo, compareInfo, baseBranch, headBranch) if ctx.Written() { diff --git a/templates/repo/diff/compare.tmpl b/templates/repo/diff/compare.tmpl index 1c8942d42f..50a51c44ac 100644 --- a/templates/repo/diff/compare.tmpl +++ b/templates/repo/diff/compare.tmpl @@ -28,6 +28,11 @@ {{range .Branches}}