MCPcopy Create free account
hub / github.com/libgit2/git2go / Rename

Method Rename

reference.go:227–250  ·  view source on GitHub ↗
(name string, force bool, msg string)

Source from the content-addressed store, hash-verified

225}
226
227func (v *Reference) Rename(name string, force bool, msg string) (*Reference, error) {
228 var ptr *C.git_reference
229 cname := C.CString(name)
230 defer C.free(unsafe.Pointer(cname))
231
232 var cmsg *C.char
233 if msg == "" {
234 cmsg = nil
235 } else {
236 cmsg = C.CString(msg)
237 defer C.free(unsafe.Pointer(cmsg))
238 }
239
240 runtime.LockOSThread()
241 defer runtime.UnlockOSThread()
242
243 ret := C.git_reference_rename(&ptr, v.ptr, cname, cbool(force), cmsg)
244 runtime.KeepAlive(v)
245 if ret < 0 {
246 return nil, MakeGitError(ret)
247 }
248
249 return newReferenceFromC(ptr, v.repo), nil
250}
251
252func (v *Reference) Target() *Oid {
253 ret := newOidFromC(C.git_reference_target(v.ptr))

Callers 1

TestRefModificationFunction · 0.45

Calls 4

cboolFunction · 0.85
MakeGitErrorFunction · 0.85
newReferenceFromCFunction · 0.85
freeMethod · 0.80

Tested by 1

TestRefModificationFunction · 0.36