summaryrefslogtreecommitdiffstats
path: root/routers/repo/commit.go
diff options
context:
space:
mode:
authorMario Lubenka <mario.lubenka@googlemail.com>2019-06-07 22:29:29 +0200
committertechknowlogick <hello@techknowlogick.com>2019-06-07 16:29:29 -0400
commit311ce2d1d06c26d0d5a3b745493995813e2ea6f2 (patch)
tree128b7cf4a9772373ea25bfea523de4298e5e78a2 /routers/repo/commit.go
parentbd55f6ff36d40503bfa3407225780d0ab7d37930 (diff)
downloadgitea-311ce2d1d06c26d0d5a3b745493995813e2ea6f2.tar.gz
gitea-311ce2d1d06c26d0d5a3b745493995813e2ea6f2.zip
Compare branches, commits and tags with each other (#6991)
* Supports tags when comparing commits or branches Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Hide headline when only comparing and don't load unused data Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Merges compare logics to allow comparing branches, commits and tags with eachother Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Display branch or tag instead of commit when used for comparing Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Show pull request form after click on button Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Transfers relevant pull.go changes from master to compare.go Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Fixes error when comparing forks against a commit or tag Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Removes console.log from JavaScript file Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Show icon next to commit reference when comparing branch or tag Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Updates css file Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Fixes import order * Renames template variable * Update routers/repo/compare.go Co-Authored-By: zeripath <art27@cantab.net> * Update from master Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Allow short-shas in compare * Renames prInfo to compareInfo Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Check PR permissions only if compare is pull request Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Adjusts comment Signed-off-by: Mario Lubenka <mario.lubenka@googlemail.com> * Use compareInfo instead of prInfo
Diffstat (limited to 'routers/repo/commit.go')
-rw-r--r--routers/repo/commit.go59
1 files changed, 4 insertions, 55 deletions
diff --git a/routers/repo/commit.go b/routers/repo/commit.go
index 870ff568f3..dde6d8f321 100644
--- a/routers/repo/commit.go
+++ b/routers/repo/commit.go
@@ -19,9 +19,9 @@ import (
)
const (
- tplCommits base.TplName = "repo/commits"
- tplGraph base.TplName = "repo/graph"
- tplDiff base.TplName = "repo/diff/page"
+ tplCommits base.TplName = "repo/commits"
+ tplGraph base.TplName = "repo/graph"
+ tplCommitPage base.TplName = "repo/commit_page"
)
// RefCommits render commits page
@@ -261,7 +261,7 @@ func Diff(ctx *context.Context) {
}
ctx.Data["RawPath"] = setting.AppSubURL + "/" + path.Join(userName, repoName, "raw", "commit", commitID)
ctx.Data["BranchName"], err = commit.GetBranchName()
- ctx.HTML(200, tplDiff)
+ ctx.HTML(200, tplCommitPage)
}
// RawDiff dumps diff results of repository in given commit ID to io.Writer
@@ -276,54 +276,3 @@ func RawDiff(ctx *context.Context) {
return
}
}
-
-// CompareDiff show different from one commit to another commit
-func CompareDiff(ctx *context.Context) {
- ctx.Data["IsRepoToolbarCommits"] = true
- ctx.Data["IsDiffCompare"] = true
- userName := ctx.Repo.Owner.Name
- repoName := ctx.Repo.Repository.Name
- beforeCommitID := ctx.Params(":before")
- afterCommitID := ctx.Params(":after")
-
- commit, err := ctx.Repo.GitRepo.GetCommit(afterCommitID)
- if err != nil {
- ctx.NotFound("GetCommit", err)
- return
- }
-
- diff, err := models.GetDiffRange(models.RepoPath(userName, repoName), beforeCommitID,
- afterCommitID, setting.Git.MaxGitDiffLines,
- setting.Git.MaxGitDiffLineCharacters, setting.Git.MaxGitDiffFiles)
- if err != nil {
- ctx.NotFound("GetDiffRange", err)
- return
- }
-
- commits, err := commit.CommitsBeforeUntil(beforeCommitID)
- if err != nil {
- ctx.ServerError("CommitsBeforeUntil", err)
- return
- }
- commits = models.ValidateCommitsWithEmails(commits)
- commits = models.ParseCommitsWithSignature(commits)
- commits = models.ParseCommitsWithStatus(commits, ctx.Repo.Repository)
-
- ctx.Data["CommitRepoLink"] = ctx.Repo.RepoLink
- ctx.Data["Commits"] = commits
- ctx.Data["CommitCount"] = commits.Len()
- ctx.Data["BeforeCommitID"] = beforeCommitID
- ctx.Data["AfterCommitID"] = afterCommitID
- ctx.Data["Username"] = userName
- ctx.Data["Reponame"] = repoName
- ctx.Data["IsImageFile"] = commit.IsImageFile
- ctx.Data["Title"] = "Comparing " + base.ShortSha(beforeCommitID) + "..." + base.ShortSha(afterCommitID) + " ยท " + userName + "/" + repoName
- ctx.Data["Commit"] = commit
- ctx.Data["Diff"] = diff
- ctx.Data["DiffNotAvailable"] = diff.NumFiles() == 0
- ctx.Data["SourcePath"] = setting.AppSubURL + "/" + path.Join(userName, repoName, "src", "commit", afterCommitID)
- ctx.Data["BeforeSourcePath"] = setting.AppSubURL + "/" + path.Join(userName, repoName, "src", "commit", beforeCommitID)
- ctx.Data["RawPath"] = setting.AppSubURL + "/" + path.Join(userName, repoName, "raw", "commit", afterCommitID)
- ctx.Data["RequireHighlightJS"] = true
- ctx.HTML(200, tplDiff)
-}