all repos — elgit @ 7a6ff3565e8e5f55d50c509c9ee12438b61c850e

fork of legit: web frontend for git, written in go

routes: refs view

commit

7a6ff3565e8e5f55d50c509c9ee12438b61c850e

parent

01f27147baf80e2222927ddca9369c7d99b4ff3c

1 file changed, 32 insertions(+), 0 deletions(-)

changed files
M git/git.gogit/git.go
@@ -78,3 +78,35 @@ }
return file.Contents() } + +func (g *GitRepo) Tags() ([]*object.Tag, error) { + ti, err := g.r.TagObjects() + if err != nil { + return nil, fmt.Errorf("tag objects: %w", err) + } + + tags := []*object.Tag{} + + _ = ti.ForEach(func(t *object.Tag) error { + tags = append(tags, t) + return nil + }) + + return tags, nil +} + +func (g *GitRepo) Branches() ([]*plumbing.Reference, error) { + bi, err := g.r.Branches() + if err != nil { + return nil, fmt.Errorf("branchs: %w", err) + } + + branches := []*plumbing.Reference{} + + _ = bi.ForEach(func(ref *plumbing.Reference) error { + branches = append(branches, ref) + return nil + }) + + return branches, nil +}