blob: d580582cdbe65469732b45d101befb1550776e36 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
// +build static,system_libgit2
package main
import (
"fmt"
git "github.com/libgit2/git2go/v30"
)
func lookupCommit(repo *git.Repository, ref string) (*git.Commit, error) {
object, err := repo.RevparseSingle(ref)
if err != nil {
return nil, fmt.Errorf("could not lookup reference: %w", err)
}
peeled, err := object.Peel(git.ObjectCommit)
if err != nil {
return nil, fmt.Errorf("could not peel reference: %w", err)
}
commit, err := peeled.AsCommit()
if err != nil {
return nil, fmt.Errorf("could not cast to commit: %w", err)
}
return commit, nil
}
|