summaryrefslogtreecommitdiffstats
path: root/modules/git/notes_gogit.go
diff options
context:
space:
mode:
authornitul1991 <nitul1991@users.noreply.github.com>2021-08-11 06:31:40 +0530
committerGitHub <noreply@github.com>2021-08-11 03:01:40 +0200
commit2d25b7d44bedf8f17cc2b49f39d1cee662b199a5 (patch)
tree0bdf04eaed29d773408eff5928ce6df238447001 /modules/git/notes_gogit.go
parentc4d70a032564f610b7215d3d3973943abbc7395f (diff)
downloadgitea-2d25b7d44bedf8f17cc2b49f39d1cee662b199a5.tar.gz
gitea-2d25b7d44bedf8f17cc2b49f39d1cee662b199a5.zip
Add an api endpoint to fetch git notes (#15373) (#16649)
close #15373
Diffstat (limited to 'modules/git/notes_gogit.go')
-rw-r--r--modules/git/notes_gogit.go9
1 files changed, 9 insertions, 0 deletions
diff --git a/modules/git/notes_gogit.go b/modules/git/notes_gogit.go
index 702754069b..9da45ca65c 100644
--- a/modules/git/notes_gogit.go
+++ b/modules/git/notes_gogit.go
@@ -10,19 +10,24 @@ import (
"context"
"io/ioutil"
+ "code.gitea.io/gitea/modules/log"
+
"github.com/go-git/go-git/v5/plumbing/object"
)
// GetNote retrieves the git-notes data for a given commit.
func GetNote(ctx context.Context, repo *Repository, commitID string, note *Note) error {
+ log.Trace("Searching for git note corresponding to the commit %q in the repository %q", commitID, repo.Path)
notes, err := repo.GetCommit(NotesRef)
if err != nil {
+ log.Error("Unable to get commit from ref %q. Error: %v", NotesRef, err)
return err
}
remainingCommitID := commitID
path := ""
currentTree := notes.Tree.gogitTree
+ log.Trace("Found tree with ID %q while searching for git note corresponding to the commit %q", currentTree.Entries[0].Name, commitID)
var file *object.File
for len(remainingCommitID) > 2 {
file, err = currentTree.File(remainingCommitID)
@@ -39,6 +44,7 @@ func GetNote(ctx context.Context, repo *Repository, commitID string, note *Note)
if err == object.ErrDirectoryNotFound {
return ErrNotExist{ID: remainingCommitID, RelPath: path}
}
+ log.Error("Unable to find git note corresponding to the commit %q. Error: %v", commitID, err)
return err
}
}
@@ -46,12 +52,14 @@ func GetNote(ctx context.Context, repo *Repository, commitID string, note *Note)
blob := file.Blob
dataRc, err := blob.Reader()
if err != nil {
+ log.Error("Unable to read blob with ID %q. Error: %v", blob.ID, err)
return err
}
defer dataRc.Close()
d, err := ioutil.ReadAll(dataRc)
if err != nil {
+ log.Error("Unable to read blob with ID %q. Error: %v", blob.ID, err)
return err
}
note.Message = d
@@ -68,6 +76,7 @@ func GetNote(ctx context.Context, repo *Repository, commitID string, note *Note)
lastCommits, err := GetLastCommitForPaths(ctx, commitNode, "", []string{path})
if err != nil {
+ log.Error("Unable to get the commit for the path %q. Error: %v", path, err)
return err
}
note.Commit = convertCommit(lastCommits[path])