diff options
author | Meaglith Ma <genedna@gmail.com> | 2014-04-06 17:28:33 +0800 |
---|---|---|
committer | Meaglith Ma <genedna@gmail.com> | 2014-04-06 17:28:33 +0800 |
commit | 2e8d5c2eb36b63468dc78561566975c72eeaaefa (patch) | |
tree | 92659a09ec784005c8d9a0540e5197a75b0a3ea9 /models/git.go | |
parent | a044c24c3db4b18b20406045b40e55ce15f941a0 (diff) | |
parent | ef6b9784962d3152d3ec46833303bad72915af57 (diff) |
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'models/git.go')
-rw-r--r-- | models/git.go | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/models/git.go b/models/git.go index d3bad6e0..46345d0f 100644 --- a/models/git.go +++ b/models/git.go @@ -56,6 +56,25 @@ func GetBranches(userName, repoName string) ([]string, error) { return brs, nil } +// GetTags returns all tags of given repository. +func GetTags(userName, repoName string) ([]string, error) { + repo, err := git.OpenRepository(RepoPath(userName, repoName)) + if err != nil { + return nil, err + } + + refs, err := repo.AllTags() + if err != nil { + return nil, err + } + + tags := make([]string, len(refs)) + for i, ref := range refs { + tags[i] = ref.Name + } + return tags, nil +} + func IsBranchExist(userName, repoName, branchName string) bool { repo, err := git.OpenRepository(RepoPath(userName, repoName)) if err != nil { |