summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Steinhardt <[email protected]>2020-09-18 14:43:56 +0200
committerGitHub <[email protected]>2020-09-18 05:43:56 -0700
commit7e726fda6ec2b5d773e5a8b54ed06378a53c0f7f (patch)
tree237cac00107ae322a58280b087eca9de62664863
parent7d4453198b55ecc2d9e09b64352edecb5db8b6ef (diff)
merge: Expose recursion limit merge option (#642)
The `recursion_limit` merge option provided by libgit2 is currently not exposed and thus inaccessible to Git2Go users. Let's expose it to let users control creation of recursive merge bases.
-rw-r--r--merge.go3
1 files changed, 3 insertions, 0 deletions
diff --git a/merge.go b/merge.go
index 6ca818e..06bd06d 100644
--- a/merge.go
+++ b/merge.go
@@ -142,6 +142,7 @@ type MergeOptions struct {
RenameThreshold uint
TargetLimit uint
+ RecursionLimit uint
FileFavor MergeFileFavor
//TODO: Diff similarity metric
@@ -153,6 +154,7 @@ func mergeOptionsFromC(opts *C.git_merge_options) MergeOptions {
TreeFlags: MergeTreeFlag(opts.flags),
RenameThreshold: uint(opts.rename_threshold),
TargetLimit: uint(opts.target_limit),
+ RecursionLimit: uint(opts.recursion_limit),
FileFavor: MergeFileFavor(opts.file_favor),
}
}
@@ -179,6 +181,7 @@ func (mo *MergeOptions) toC() *C.git_merge_options {
flags: C.uint32_t(mo.TreeFlags),
rename_threshold: C.uint(mo.RenameThreshold),
target_limit: C.uint(mo.TargetLimit),
+ recursion_limit: C.uint(mo.RecursionLimit),
file_favor: C.git_merge_file_favor_t(mo.FileFavor),
}
}