summaryrefslogtreecommitdiff
path: root/merge.go
diff options
context:
space:
mode:
authorJesse Ezell <[email protected]>2014-02-28 14:33:38 -0800
committerJesse Ezell <[email protected]>2014-02-28 14:33:38 -0800
commite5946d4009cf58f7a041f647e953a454159e2d4f (patch)
treedbd71b0290a3fd31fd9ef60169eec946215db66c /merge.go
parent6af4d4a82534f0cebc3d9ac680f83da1aace884a (diff)
Add defaults, add simple test, merge heads should be pointer array
Diffstat (limited to 'merge.go')
-rw-r--r--merge.go12
1 files changed, 11 insertions, 1 deletions
diff --git a/merge.go b/merge.go
index 570c361..59cdd58 100644
--- a/merge.go
+++ b/merge.go
@@ -85,6 +85,12 @@ type MergeOptions struct {
//TODO: CheckoutOptions CheckoutOptions
}
+func DefaultMergeOptions() MergeOptions {
+ options := MergeOptions{Version: 1}
+ options.TreeOptions = DefaultMergeTreeOptions()
+ return options
+}
+
func (mo *MergeOptions) toC() *C.git_merge_opts {
return &C.git_merge_opts{
version: C.uint(mo.Version),
@@ -117,6 +123,10 @@ type MergeTreeOptions struct {
FileFavor MergeFileFavorType
}
+func DefaultMergeTreeOptions() MergeTreeOptions {
+ return MergeTreeOptions{Version: 1}
+}
+
func (mo *MergeTreeOptions) toC() *C.git_merge_tree_opts {
return &C.git_merge_tree_opts{
version: C.uint(mo.Version),
@@ -170,7 +180,7 @@ func (mr *MergeResult) FastForwardId() (*Oid, error) {
return newOidFromC(&oid), nil
}
-func (r *Repository) Merge(theirHeads []MergeHead, options MergeOptions) (*MergeResult, error) {
+func (r *Repository) Merge(theirHeads []*MergeHead, options MergeOptions) (*MergeResult, error) {
runtime.LockOSThread()
defer runtime.UnlockOSThread()