summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEdward Thomson <ethomson@edwardthomson.com>2022-02-12 08:46:55 -0500
committerEdward Thomson <ethomson@edwardthomson.com>2022-02-12 08:46:55 -0500
commit0fbf62cd2027e4ad6aed1d207099c17d2414073c (patch)
tree193e3fbc533d4bf746c063fc27ab534ff688c991 /src
parentfed3fef451a45c0b654f996760f403b454f23616 (diff)
downloadlibgit2-0fbf62cd2027e4ad6aed1d207099c17d2414073c.tar.gz
merge: make the internal flags public
We made the flags that enable recursive merge internal, on the assumption that nobody would want them and they're hard to reason about. (Giving people an option that nobody wants is just extra noise.) However, it made it hard for _us_ to reason about. There's no good reason to keep it private, let's just make it public and push that cognitive load onto our poor users. But they should expect it, they're dealing with git, after all.
Diffstat (limited to 'src')
-rw-r--r--src/merge.c6
-rw-r--r--src/merge.h10
-rw-r--r--src/merge_driver.c2
3 files changed, 4 insertions, 14 deletions
diff --git a/src/merge.c b/src/merge.c
index 5f3a37bbe..641b32632 100644
--- a/src/merge.c
+++ b/src/merge.c
@@ -2116,11 +2116,11 @@ int git_merge__iterators(
file_opts.flags = opts.file_flags;
/* use the git-inspired labels when virtual base building */
- if (opts.flags & GIT_MERGE__VIRTUAL_BASE) {
+ if (opts.flags & GIT_MERGE_VIRTUAL_BASE) {
file_opts.ancestor_label = "merged common ancestors";
file_opts.our_label = "Temporary merge branch 1";
file_opts.their_label = "Temporary merge branch 2";
- file_opts.flags |= GIT_MERGE_FILE__CONFLICTED;
+ file_opts.flags |= GIT_MERGE_FILE_ACCEPT_CONFLICTS;
file_opts.marker_size = GIT_MERGE_CONFLICT_MARKER_SIZE + 2;
}
@@ -2280,7 +2280,7 @@ static int create_virtual_base(
memcpy(&virtual_opts, opts, sizeof(git_merge_options));
virtual_opts.flags &= ~GIT_MERGE_FAIL_ON_CONFLICT;
- virtual_opts.flags |= GIT_MERGE__VIRTUAL_BASE;
+ virtual_opts.flags |= GIT_MERGE_VIRTUAL_BASE;
if ((merge_annotated_commits(&index, NULL, repo, one, two,
recursion_level + 1, &virtual_opts)) < 0)
diff --git a/src/merge.h b/src/merge.h
index e033e876a..23932905e 100644
--- a/src/merge.h
+++ b/src/merge.h
@@ -25,16 +25,6 @@
#define GIT_MERGE_DEFAULT_RENAME_THRESHOLD 50
#define GIT_MERGE_DEFAULT_TARGET_LIMIT 1000
-
-/** Internal merge flags. */
-
-/** The merge is for a virtual base in a recursive merge. */
-#define GIT_MERGE__VIRTUAL_BASE (GIT_MERGE__INTERNAL_FLAG)
-
-/** Accept the conflict file, staging it as the merge result. */
-#define GIT_MERGE_FILE__CONFLICTED (GIT_MERGE_FILE__INTERNAL_FLAG)
-
-
/** Types of changes when files are merged from branch to branch. */
typedef enum {
/* No conflict - a change only occurs in one branch. */
diff --git a/src/merge_driver.c b/src/merge_driver.c
index 66b257a4f..19b35ac0e 100644
--- a/src/merge_driver.c
+++ b/src/merge_driver.c
@@ -93,7 +93,7 @@ int git_merge_driver__builtin_apply(
goto done;
if (!result.automergeable &&
- !(file_opts.flags & GIT_MERGE_FILE__CONFLICTED)) {
+ !(file_opts.flags & GIT_MERGE_FILE_ACCEPT_CONFLICTS)) {
error = GIT_EMERGECONFLICT;
goto done;
}