From 6bdd6f9b18136a6066f3fc87349037027eb7a499 Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Sat, 15 Mar 2014 23:38:11 +0800 Subject: add size for file --- models/repo2.go | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'models/repo2.go') diff --git a/models/repo2.go b/models/repo2.go index d879130a..e3fdc278 100644 --- a/models/repo2.go +++ b/models/repo2.go @@ -16,6 +16,7 @@ type RepoFile struct { Path string Message string Created time.Time + Size int64 } func GetReposFiles(userName, reposName, branchName, rpath string) ([]*RepoFile, error) { @@ -40,6 +41,10 @@ func GetReposFiles(userName, reposName, branchName, rpath string) ([]*RepoFile, var repofiles []*RepoFile lastCommit.Tree.Walk(func(dirname string, entry *git.TreeEntry) int { if dirname == rpath { + size, err := repo.ObjectSize(entry.Id) + if err != nil { + return 0 + } switch entry.Filemode { case git.FileModeBlob, git.FileModeBlobExec: repofiles = append(repofiles, &RepoFile{ @@ -47,6 +52,7 @@ func GetReposFiles(userName, reposName, branchName, rpath string) ([]*RepoFile, path.Join(dirname, entry.Name), lastCommit.Message(), lastCommit.Committer.When, + size, }) case git.FileModeTree: repodirs = append(repodirs, &RepoFile{ @@ -54,6 +60,7 @@ func GetReposFiles(userName, reposName, branchName, rpath string) ([]*RepoFile, path.Join(dirname, entry.Name), lastCommit.Message(), lastCommit.Committer.When, + size, }) } } -- cgit v1.2.3