diff options
author | Edward Thomson <ethomson@microsoft.com> | 2014-01-08 18:29:42 -0800 |
---|---|---|
committer | Edward Thomson <ethomson@microsoft.com> | 2014-01-20 17:15:11 -0500 |
commit | c1d648c5c6361edfb1aa85a31656b628672c7616 (patch) | |
tree | f611ff05206f2305c82867514f1e7f22b602c7b7 /src/merge_file.h | |
parent | e49c98e6efaa444ed73ac3b8318a693801f93184 (diff) | |
download | libgit2-c1d648c5c6361edfb1aa85a31656b628672c7616.tar.gz |
merge_file should use more aggressive levels
The default merge_file level was XDL_MERGE_MINIMAL, which will
produce conflicts where there should not be in the case where
both sides were changed identically. Change the defaults to be
more aggressive (XDL_MERGE_ZEALOUS) which will more aggressively
compress non-conflicts. This matches git.git's defaults.
Increase testing around reverting a previously reverted commit to
illustrate this problem.
Diffstat (limited to 'src/merge_file.h')
-rw-r--r-- | src/merge_file.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/merge_file.h b/src/merge_file.h index 0af2f0a57..5d7ea9752 100644 --- a/src/merge_file.h +++ b/src/merge_file.h @@ -34,6 +34,18 @@ typedef struct { #define GIT_MERGE_FILE_RESULT_INIT {0} +typedef enum { + /* Condense non-alphanumeric regions for simplified diff file */ + GIT_MERGE_FILE_SIMPLIFY_ALNUM = (1 << 0), +} git_merge_file_flags_t; + +typedef struct { + git_merge_file_favor_t favor; + git_merge_file_flags_t flags; +} git_merge_file_options; + +#define GIT_MERGE_FILE_OPTIONS_INIT {0} + int git_merge_file_input_from_index_entry( git_merge_file_input *input, git_repository *repo, @@ -49,7 +61,7 @@ int git_merge_files( git_merge_file_input *ancestor, git_merge_file_input *ours, git_merge_file_input *theirs, - git_merge_automerge_flags flags); + git_merge_file_options *opts); GIT_INLINE(void) git_merge_file_input_free(git_merge_file_input *input) { |