summaryrefslogtreecommitdiff
path: root/repository.go
diff options
context:
space:
mode:
authorCarlos Martín Nieto <[email protected]>2015-07-31 20:24:18 +0200
committerCarlos Martín Nieto <[email protected]>2015-07-31 20:24:18 +0200
commitc0c6caed3a9564602af1f1881933229f99f4729f (patch)
tree8ef9d2c2c6628d0dbfc8b26f7407c18c7aaf869c /repository.go
parenta2e4e9259be7fcd4019e85accc7f25f130c27d3c (diff)
parentdef4494b74ec1c8fd12669e3f65bd29d6315c83c (diff)
Merge branch 'tags-col' into next
Diffstat (limited to 'repository.go')
-rw-r--r--repository.go34
1 files changed, 4 insertions, 30 deletions
diff --git a/repository.go b/repository.go
index 44509af..62fde6d 100644
--- a/repository.go
+++ b/repository.go
@@ -27,6 +27,9 @@ type Repository struct {
// Notes represents the collection of notes and can be used to
// read, write and delete notes from this repository.
Notes NoteCollection
+ // Tags represents the collection of tags and can be used to create,
+ // list and iterate tags in this repository.
+ Tags TagsCollection
}
func newRepositoryFromC(ptr *C.git_repository) *Repository {
@@ -36,6 +39,7 @@ func newRepositoryFromC(ptr *C.git_repository) *Repository {
repo.Submodules.repo = repo
repo.References.repo = repo
repo.Notes.repo = repo
+ repo.Tags.repo = repo
runtime.SetFinalizer(repo, (*Repository).Free)
@@ -317,36 +321,6 @@ func (v *Repository) CreateCommit(
return oid, nil
}
-func (v *Repository) CreateTag(
- name string, commit *Commit, tagger *Signature, message string) (*Oid, error) {
-
- oid := new(Oid)
-
- cname := C.CString(name)
- defer C.free(unsafe.Pointer(cname))
-
- cmessage := C.CString(message)
- defer C.free(unsafe.Pointer(cmessage))
-
- taggerSig, err := tagger.toC()
- if err != nil {
- return nil, err
- }
- defer C.git_signature_free(taggerSig)
-
- ctarget := commit.gitObject.ptr
-
- runtime.LockOSThread()
- defer runtime.UnlockOSThread()
-
- ret := C.git_tag_create(oid.toC(), v.ptr, cname, ctarget, taggerSig, cmessage, 0)
- if ret < 0 {
- return nil, MakeGitError(ret)
- }
-
- return oid, nil
-}
-
func (v *Odb) Free() {
runtime.SetFinalizer(v, nil)
C.git_odb_free(v.ptr)