summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorEdward Thomson <ethomson@edwardthomson.com>2022-02-12 21:23:01 -0500
committerGitHub <noreply@github.com>2022-02-12 21:23:01 -0500
commitaded938e00357263a9c0ef24f9ef573873dbf086 (patch)
treec45d8be83b18ddf4dbed17bfd51adbb221980ece /include
parentd99b4019e1e8acdfdbd8dea6623df48008c98dc7 (diff)
parent0fbf62cd2027e4ad6aed1d207099c17d2414073c (diff)
downloadlibgit2-aded938e00357263a9c0ef24f9ef573873dbf086.tar.gz
Merge pull request #6204 from boretrk/merge_flags
merge: fix overlap between GIT_MERGE_FILE_FAVOR__CONFLICTED and GIT_MERGE_FILE_SIMPLIFY_ALNUM
Diffstat (limited to 'include')
-rw-r--r--include/git2/merge.h19
1 files changed, 17 insertions, 2 deletions
diff --git a/include/git2/merge.h b/include/git2/merge.h
index edd090cff..e90941a49 100644
--- a/include/git2/merge.h
+++ b/include/git2/merge.h
@@ -91,7 +91,15 @@ typedef enum {
* instead simply use the first base. This flag provides a similar
* merge base to `git-merge-resolve`.
*/
- GIT_MERGE_NO_RECURSIVE = (1 << 3)
+ GIT_MERGE_NO_RECURSIVE = (1 << 3),
+
+ /**
+ * Treat this merge as if it is to produce the virtual base
+ * of a recursive merge. This will ensure that there are
+ * no conflicts, any conflicting regions will keep conflict
+ * markers in the merge result.
+ */
+ GIT_MERGE_VIRTUAL_BASE = (1 << 4)
} git_merge_flag_t;
/**
@@ -162,7 +170,14 @@ typedef enum {
GIT_MERGE_FILE_DIFF_MINIMAL = (1 << 7),
/** Create zdiff3 ("zealous diff3")-style files */
- GIT_MERGE_FILE_STYLE_ZDIFF3 = (1 << 8)
+ GIT_MERGE_FILE_STYLE_ZDIFF3 = (1 << 8),
+
+ /**
+ * Do not produce file conflicts when common regions have
+ * changed; keep the conflict markers in the file and accept
+ * that as the merge result.
+ */
+ GIT_MERGE_FILE_ACCEPT_CONFLICTS = (1 << 9)
} git_merge_file_flag_t;
#define GIT_MERGE_CONFLICT_MARKER_SIZE 7