]> git.ipfire.org Git - thirdparty/git.git/blobdiff - merge-recursive.h
Merge branch 'en/merge-recursive-directory-rename-fixes'
[thirdparty/git.git] / merge-recursive.h
index 933d6e76427d217c30d51299b665981a127c992b..978847e6724805ccab3fb85015f51677b045da62 100644 (file)
@@ -1,13 +1,15 @@
 #ifndef MERGE_RECURSIVE_H
 #define MERGE_RECURSIVE_H
 
-#include "string-list.h"
-#include "unpack-trees.h"
+#include "strbuf.h"
 
 struct commit;
-
+struct commit_list;
+struct object_id;
 struct repository;
+struct tree;
 
+struct merge_options_internal;
 struct merge_options {
        struct repository *repo;
 
@@ -30,9 +32,9 @@ struct merge_options {
        /* xdiff-related options (patience, ignore whitespace, ours/theirs) */
        long xdl_opts;
        enum {
-               MERGE_RECURSIVE_NORMAL = 0,
-               MERGE_RECURSIVE_OURS,
-               MERGE_RECURSIVE_THEIRS
+               MERGE_VARIANT_NORMAL = 0,
+               MERGE_VARIANT_OURS,
+               MERGE_VARIANT_THEIRS
        } recursive_variant;
 
        /* console output related options */
@@ -45,13 +47,8 @@ struct merge_options {
        const char *subtree_shift;
        unsigned renormalize : 1;
 
-       /* internal fields used by the implementation (do NOT set these) */
-       int call_depth;
-       int needed_rename_limit;
-       struct hashmap current_file_dir_set;
-       struct string_list df_conflict_file_set;
-       struct unpack_trees_options unpack_opts;
-       struct index_state orig_index;
+       /* internal fields used by the implementation */
+       struct merge_options_internal *priv;
 };
 
 void init_merge_options(struct merge_options *opt, struct repository *repo);