From 627f58d4038cdbc20a1ea96dc43ee06709528d2f Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 18 Sep 2020 06:23:21 -0700 Subject: [PATCH] merge: Expose recursion limit merge option (#642) (#644) 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. (cherry picked from commit 7e726fda6ec2b5d773e5a8b54ed06378a53c0f7f) Co-authored-by: Patrick Steinhardt --- merge.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/merge.go b/merge.go index 4f097b7..da1c3d6 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.git_merge_flag_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), } }