summaryrefslogtreecommitdiff
path: root/index.go
diff options
context:
space:
mode:
Diffstat (limited to 'index.go')
-rw-r--r--index.go18
1 files changed, 16 insertions, 2 deletions
diff --git a/index.go b/index.go
index 6da3c98..7336249 100644
--- a/index.go
+++ b/index.go
@@ -23,7 +23,7 @@ type IndexEntry struct {
Uid uint
Gid uint
Size uint
- Id *Oid
+ Id *Oid
Path string
}
@@ -48,6 +48,20 @@ func (v *Index) AddByPath(path string) error {
return nil
}
+func (v *Index) WriteTreeTo(repo *Repository) (*Oid, error) {
+ oid := new(Oid)
+
+ runtime.LockOSThread()
+ defer runtime.UnlockOSThread()
+
+ ret := C.git_index_write_tree_to(oid.toC(), v.ptr, repo.ptr)
+ if ret < 0 {
+ return nil, MakeGitError(ret)
+ }
+
+ return oid, nil
+}
+
func (v *Index) WriteTree() (*Oid, error) {
oid := new(Oid)
@@ -62,7 +76,7 @@ func (v *Index) WriteTree() (*Oid, error) {
return oid, nil
}
-func (v *Index) Write() (error) {
+func (v *Index) Write() error {
runtime.LockOSThread()
defer runtime.UnlockOSThread()