aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--git_misc.go11
-rw-r--r--handle_repo_index.go3
-rw-r--r--handle_repo_tree.go4
3 files changed, 12 insertions, 6 deletions
diff --git a/git_misc.go b/git_misc.go
index c463cc4..aa662b1 100644
--- a/git_misc.go
+++ b/git_misc.go
@@ -1,6 +1,15 @@
package main
-import "github.com/go-git/go-git/v5/plumbing/object"
+import (
+ "path/filepath"
+
+ "github.com/go-git/go-git/v5"
+ "github.com/go-git/go-git/v5/plumbing/object"
+)
+
+func open_git_repo(category_name, repo_name string) (*git.Repository, error) {
+ return git.PlainOpen(filepath.Join(config.Git.Root, category_name, repo_name+".git"))
+}
func build_display_git_tree(tree *object.Tree) []display_git_tree_entry_t {
display_git_tree := make([]display_git_tree_entry_t, 0)
diff --git a/handle_repo_index.go b/handle_repo_index.go
index 8418d70..70aebe6 100644
--- a/handle_repo_index.go
+++ b/handle_repo_index.go
@@ -2,7 +2,6 @@ package main
import (
"net/http"
- "path/filepath"
"github.com/go-git/go-git/v5"
"github.com/go-git/go-git/v5/plumbing/object"
@@ -13,7 +12,7 @@ func handle_repo_index(w http.ResponseWriter, r *http.Request) {
// TODO: Sanitize path values
category_name, repo_name := r.PathValue("category_name"), r.PathValue("repo_name")
data["category_name"], data["repo_name"] = category_name, repo_name
- repo, err := git.PlainOpen(filepath.Join(config.Git.Root, category_name, repo_name+".git"))
+ repo, err := open_git_repo(category_name, repo_name)
if err != nil {
_, _ = w.Write([]byte("Error opening repo: " + err.Error()))
return
diff --git a/handle_repo_tree.go b/handle_repo_tree.go
index c542394..5b27f8f 100644
--- a/handle_repo_tree.go
+++ b/handle_repo_tree.go
@@ -4,13 +4,11 @@ import (
"bytes"
"html/template"
"net/http"
- "path/filepath"
"strings"
chroma_formatters_html "github.com/alecthomas/chroma/v2/formatters/html"
chroma_lexers "github.com/alecthomas/chroma/v2/lexers"
chroma_styles "github.com/alecthomas/chroma/v2/styles"
- "github.com/go-git/go-git/v5"
"github.com/go-git/go-git/v5/plumbing"
)
@@ -19,7 +17,7 @@ func handle_repo_tree(w http.ResponseWriter, r *http.Request) {
// TODO: Sanitize path values
ref_name, category_name, repo_name, path_spec := r.PathValue("ref"), r.PathValue("category_name"), r.PathValue("repo_name"), strings.TrimSuffix(r.PathValue("rest"), "/")
data["category_name"], data["repo_name"], data["path_spec"] = category_name, repo_name, path_spec
- repo, err := git.PlainOpen(filepath.Join(config.Git.Root, category_name, repo_name+".git"))
+ repo, err := open_git_repo(category_name, repo_name)
if err != nil {
_, _ = w.Write([]byte("Error opening repo: " + err.Error()))
return