From c1df2dcdc16cab82e356940658fd83fdd0a3b5b2 Mon Sep 17 00:00:00 2001 From: Fernando Oliveira Date: Thu, 30 Apr 2015 23:16:12 -0300 Subject: [PATCH] Add method to check if repo is detached --- repository.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/repository.go b/repository.go index 7fac277..b6c75ef 100644 --- a/repository.go +++ b/repository.go @@ -255,6 +255,20 @@ func (v *Repository) SetHeadDetached(id *Oid, sig *Signature, msg string) error return nil } +func (v *Repository) IsHeadDetached() (bool, error) { + runtime.LockOSThread() + defer runtime.UnlockOSThread() + + ret := C.git_repository_head_detached(v.ptr) + switch ret { + case 1: + return true, nil + case 0: + return false, nil + } + return false, MakeGitError(ret) +} + func (v *Repository) CreateReference(name string, id *Oid, force bool, sig *Signature, msg string) (*Reference, error) { cname := C.CString(name) defer C.free(unsafe.Pointer(cname))