diff options
Diffstat (limited to 'vendor/code.gitea.io/git/repo_ref.go')
-rw-r--r-- | vendor/code.gitea.io/git/repo_ref.go | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/vendor/code.gitea.io/git/repo_ref.go b/vendor/code.gitea.io/git/repo_ref.go deleted file mode 100644 index e1ab46e090..0000000000 --- a/vendor/code.gitea.io/git/repo_ref.go +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2018 The Gitea Authors. All rights reserved. -// Use of this source code is governed by a MIT-style -// license that can be found in the LICENSE file. - -package git - -import ( - "strings" - - "gopkg.in/src-d/go-git.v4" - "gopkg.in/src-d/go-git.v4/plumbing" -) - -// GetRefs returns all references of the repository. -func (repo *Repository) GetRefs() ([]*Reference, error) { - return repo.GetRefsFiltered("") -} - -// GetRefsFiltered returns all references of the repository that matches patterm exactly or starting with. -func (repo *Repository) GetRefsFiltered(pattern string) ([]*Reference, error) { - r, err := git.PlainOpen(repo.Path) - if err != nil { - return nil, err - } - - refsIter, err := r.References() - if err != nil { - return nil, err - } - refs := make([]*Reference, 0) - if err = refsIter.ForEach(func(ref *plumbing.Reference) error { - if ref.Name() != plumbing.HEAD && !ref.Name().IsRemote() && - (pattern == "" || strings.HasPrefix(ref.Name().String(), pattern)) { - r := &Reference{ - Name: ref.Name().String(), - Object: SHA1(ref.Hash()), - Type: string(ObjectCommit), - repo: repo, - } - if ref.Name().IsTag() { - r.Type = string(ObjectTag) - } - refs = append(refs, r) - } - return nil - }); err != nil { - return nil, err - } - - return refs, nil -} |