aboutsummaryrefslogtreecommitdiff
path: root/http_handle_repo_index.go
diff options
context:
space:
mode:
authorRunxi Yu <me@runxiyu.org>2025-03-16 01:36:02 +0800
committerRunxi Yu <me@runxiyu.org>2025-03-16 01:36:02 +0800
commitcab2f0547987fa3ecd32c37971dd0f4df9787465 (patch)
treedc5ed7909c151db7882e846c7c3f1080ed8f4dbf /http_handle_repo_index.go
parent*: go-humanize is a direct dependency, not indirect (diff)
downloadforge-cab2f0547987fa3ecd32c37971dd0f4df9787465.tar.gz
forge-cab2f0547987fa3ecd32c37971dd0f4df9787465.tar.zst
forge-cab2f0547987fa3ecd32c37971dd0f4df9787465.zip
Show branches
Diffstat (limited to 'http_handle_repo_index.go')
-rw-r--r--http_handle_repo_index.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/http_handle_repo_index.go b/http_handle_repo_index.go
index 6ac9b07..e4a9f5d 100644
--- a/http_handle_repo_index.go
+++ b/http_handle_repo_index.go
@@ -9,6 +9,7 @@ import (
"github.com/go-git/go-git/v5"
"github.com/go-git/go-git/v5/plumbing"
+ "github.com/go-git/go-git/v5/plumbing/storer"
"github.com/go-git/go-git/v5/plumbing/object"
)
@@ -22,6 +23,8 @@ func handle_repo_index(w http.ResponseWriter, r *http.Request, params map[string
var commit_object *object.Commit
var tree *object.Tree
var notes []string
+ var branches []string
+ var branches_ storer.ReferenceIter
repo, repo_name, group_path = params["repo"].(*git.Repository), params["repo_name"].(string), params["group_path"].([]string)
@@ -34,6 +37,15 @@ func handle_repo_index(w http.ResponseWriter, r *http.Request, params map[string
goto no_ref
}
+ branches_, err = repo.Branches()
+ if err != nil {}
+ err = branches_.ForEach(func (branch *plumbing.Reference) error {
+ branches = append(branches, branch.Name().Short())
+ return nil
+ })
+ if err != nil {}
+ params["branches"] = branches
+
if recent_commits, err = get_recent_commits(repo, ref_hash, 3); err != nil {
goto no_ref
}