summaryrefslogtreecommitdiff
path: root/repository.go
diff options
context:
space:
mode:
authorVicent Martí <[email protected]>2013-03-06 15:01:42 -0800
committerVicent Martí <[email protected]>2013-03-06 15:01:42 -0800
commitbc3f9e02ee8d97c62282b90cb47ba8208ea66d56 (patch)
tree5fcf0114194960456205b7d5f5aab23dfab5c661 /repository.go
parent677378bc3434123eb68a543b256479772bca5631 (diff)
parent5c09440f4252223e9f0f49e7d67accd2d7455bbe (diff)
Merge pull request #7 from carlosmn/blob
Add a couple of missing methods around Blob
Diffstat (limited to 'repository.go')
-rw-r--r--repository.go11
1 files changed, 11 insertions, 0 deletions
diff --git a/repository.go b/repository.go
index bfbd781..4cc8c5d 100644
--- a/repository.go
+++ b/repository.go
@@ -92,6 +92,17 @@ func (v *Repository) LookupCommit(o *Oid) (*Commit, error) {
return commit, nil
}
+func (v *Repository) LookupBlob(o *Oid) (*Blob, error) {
+ blob := new(Blob)
+ ecode := C.git_blob_lookup(&blob.ptr, v.ptr, o.toC())
+ if ecode < 0 {
+ return nil, LastError()
+ }
+
+ runtime.SetFinalizer(blob, (*Blob).Free)
+ return blob, nil
+}
+
func (v *Repository) Walk() (*RevWalk, error) {
walk := new(RevWalk)
ecode := C.git_revwalk_new(&walk.ptr, v.ptr)