forked from Gitlink/gitea-1120-rc1
perf: add the Sha of json response for commits and compare API
This commit is contained in:
parent
5c94750c07
commit
56d390d20b
|
@ -260,6 +260,11 @@ func GetPullFiles(ctx *context.APIContext) {
|
|||
ctx.JSON(200, diff)
|
||||
}
|
||||
|
||||
type PullRequestCommit struct {
|
||||
models.SignCommitWithStatuses
|
||||
Sha string
|
||||
}
|
||||
|
||||
func GetPullCommits(ctx *context.APIContext) {
|
||||
issue := checkPullInfo(ctx.Context)
|
||||
if issue == nil {
|
||||
|
@ -292,13 +297,16 @@ func GetPullCommits(ctx *context.APIContext) {
|
|||
commits = models.ValidateCommitsWithEmails(commits)
|
||||
commits = models.ParseCommitsWithSignature(commits, ctx.Repo.Repository)
|
||||
commits = models.ParseCommitsWithStatus(commits, ctx.Repo.Repository)
|
||||
ctx.Data["Commits"] = commits
|
||||
ctx.Data["CommitCount"] = commits.Len()
|
||||
|
||||
result := make([]models.SignCommitWithStatuses, 0)
|
||||
result := make([]PullRequestCommit, 0)
|
||||
// result := make([]models.SignCommitWithStatuses, 0)
|
||||
for commit := commits.Front(); commit != nil; commit = commit.Next() {
|
||||
temp := commit.Value.(models.SignCommitWithStatuses)
|
||||
result = append(result, temp)
|
||||
pullRequestCommit := PullRequestCommit{
|
||||
temp,
|
||||
temp.ID.String(),
|
||||
}
|
||||
result = append(result, pullRequestCommit)
|
||||
}
|
||||
|
||||
ctx.JSON(200, result)
|
||||
|
|
|
@ -858,6 +858,12 @@ func SetDiffViewStyle(ctx *context.Context) {
|
|||
}
|
||||
}
|
||||
|
||||
type CompareCommit struct {
|
||||
*git.Commit
|
||||
Sha string
|
||||
ParentShas []string
|
||||
}
|
||||
|
||||
func CompareDiff(ctx *context.APIContext) {
|
||||
headUser, headRepo, headGitRepo, compareInfo, baseBranch, headBranch := ParseCompareInfo(ctx.Context)
|
||||
if ctx.Written() {
|
||||
|
@ -870,15 +876,23 @@ func CompareDiff(ctx *context.APIContext) {
|
|||
return
|
||||
}
|
||||
|
||||
result := make([]*git.Commit, 0)
|
||||
result := make([]CompareCommit, 0)
|
||||
for commit := compareInfo.Commits.Front(); commit != nil; commit = commit.Next() {
|
||||
temp := commit.Value.(*git.Commit)
|
||||
result = append(result, temp)
|
||||
compareCommit := CompareCommit{
|
||||
temp,
|
||||
temp.ID.String(),
|
||||
make([]string, 0),
|
||||
}
|
||||
for i := 0; i < len(temp.Parents); i++ {
|
||||
compareCommit.ParentShas = append(compareCommit.ParentShas, temp.Parents[i].String())
|
||||
}
|
||||
result = append(result, compareCommit)
|
||||
}
|
||||
|
||||
different := struct {
|
||||
Commits []*git.Commit `json: "commits"`
|
||||
Diff interface{} `json: "diff"`
|
||||
Commits []CompareCommit
|
||||
Diff interface{}
|
||||
}{}
|
||||
|
||||
different.Commits = result
|
||||
|
|
Loading…
Reference in New Issue