mirror of
https://github.com/go-gitea/gitea.git
synced 2025-08-29 03:52:49 +09:00
Near ready
This commit is contained in:
43
models/branch.go
Normal file
43
models/branch.go
Normal file
@ -0,0 +1,43 @@
|
||||
package models
|
||||
|
||||
import (
|
||||
"github.com/gogits/git-module"
|
||||
)
|
||||
|
||||
type Branch struct {
|
||||
Path string
|
||||
Name string
|
||||
}
|
||||
|
||||
func GetBranchesByPath(path string) ([]*Branch, error) {
|
||||
gitRepo, err := git.OpenRepository(path)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
brs, err := gitRepo.GetBranches()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
Branches := make([]*Branch, len(brs))
|
||||
for i := range brs {
|
||||
Branches[i] = &Branch{
|
||||
Path: path,
|
||||
Name: brs[i],
|
||||
}
|
||||
}
|
||||
return Branches, nil
|
||||
}
|
||||
|
||||
func GetBranchesByRepo(user,repo string) ([]*Branch, error) {
|
||||
return GetBranchesByPath(RepoPath(user, repo))
|
||||
}
|
||||
|
||||
func (br *Branch) GetCommit() (*git.Commit, error) {
|
||||
gitRepo, err := git.OpenRepository(br.Path)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return gitRepo.GetBranchCommit(br.Name)
|
||||
}
|
Reference in New Issue
Block a user