* Fix count for commit graph last page * Remove used once variable * Move func to model * capitalize method name * fix error messagetags/v1.11.0-rc1
@@ -248,6 +248,16 @@ func CommitChanges(repoPath string, opts CommitChangesOptions) error { | |||
return err | |||
} | |||
// AllCommitsCount returns count of all commits in repository | |||
func AllCommitsCount(repoPath string) (int64, error) { | |||
stdout, err := NewCommand("rev-list", "--all", "--count").RunInDir(repoPath) | |||
if err != nil { | |||
return 0, err | |||
} | |||
return strconv.ParseInt(strings.TrimSpace(stdout), 10, 64) | |||
} | |||
func commitsCount(repoPath, revision, relpath string) (int64, error) { | |||
cmd := NewCommand("rev-list", "--count") | |||
cmd.AddArguments(revision) |
@@ -46,6 +46,11 @@ type GPGSettings struct { | |||
const prettyLogFormat = `--pretty=format:%H` | |||
// GetAllCommitsCount returns count of all commits in repository | |||
func (repo *Repository) GetAllCommitsCount() (int64, error) { | |||
return AllCommitsCount(repo.Path) | |||
} | |||
func (repo *Repository) parsePrettyFormatLogToList(logs []byte) (*list.List, error) { | |||
l := list.New() | |||
if len(logs) == 0 { |
@@ -91,6 +91,12 @@ func Graph(ctx *context.Context) { | |||
return | |||
} | |||
allCommitsCount, err := ctx.Repo.GitRepo.GetAllCommitsCount() | |||
if err != nil { | |||
ctx.ServerError("GetAllCommitsCount", err) | |||
return | |||
} | |||
page := ctx.QueryInt("page") | |||
graph, err := models.GetCommitGraph(ctx.Repo.GitRepo, page) | |||
@@ -105,7 +111,7 @@ func Graph(ctx *context.Context) { | |||
ctx.Data["CommitCount"] = commitsCount | |||
ctx.Data["Branch"] = ctx.Repo.BranchName | |||
ctx.Data["RequireGitGraph"] = true | |||
ctx.Data["Page"] = context.NewPagination(int(commitsCount), setting.UI.GraphMaxCommitNum, page, 5) | |||
ctx.Data["Page"] = context.NewPagination(int(allCommitsCount), setting.UI.GraphMaxCommitNum, page, 5) | |||
ctx.HTML(200, tplGraph) | |||
} | |||