From 86c8d02c071d3713e1c9f0b95d9f4599108d2c29 Mon Sep 17 00:00:00 2001 From: Edward Thomson Date: Thu, 22 Oct 2015 20:20:07 -0400 Subject: [PATCH] merge: add simple recursive test Add a simple recursive test - where multiple ancestors exist and creating a virtual merge base from them would prevent a conflict. --- include/git2/merge.h | 18 ++- tests/merge/merge_helpers.c | 3 +- tests/merge/trees/recursive.c | 110 ++++++++++++++++++ tests/resources/merge-recursive/.gitted/HEAD | Bin 0 -> 26 bytes .../resources/merge-recursive/.gitted/config | Bin 0 -> 137 bytes tests/resources/merge-recursive/.gitted/index | Bin 0 -> 632 bytes .../merge-recursive/.gitted/info/refs | Bin 0 -> 59 bytes .../00/6b298c5702b04c00370d0414959765b82fd722 | Bin 0 -> 207 bytes .../01/6eef4a6fefd36bdcaa93ad773449ddc5c73cbb | Bin 0 -> 208 bytes .../05/c6a04ac101ab1a9836a95d5ec8d16b6f6304fd | Bin 0 -> 208 bytes .../07/10c3c796e0704361472ecb904413fca0107a25 | Bin 0 -> 208 bytes .../07/2d89dcf3a7671ac34a8e875bb72fb39bcf14d7 | Bin 0 -> 208 bytes .../0b/b7ed583d7e9ad507e8b902594f5c9126ea456b | Bin 0 -> 161 bytes .../12/4d4fe29d3433fdaa2f0f455d226f2c79d89cf3 | Bin 0 -> 208 bytes .../16/895aa5e13f8907d4adab81285557d938fad342 | Bin 0 -> 634 bytes .../3a/3f5a6ec1c968d1d2d5d20dee0d161a4351f279 | Bin 0 -> 162 bytes .../3b/919b6e8a575b4779c8243ebea3e3beb436e88f | Bin 0 -> 208 bytes .../3f/d41804a7906db846af5e868444782e546af46a | Bin 0 -> 206 bytes .../42/1b392106e079df6d412babd5636697938269ec | Bin 0 -> 163 bytes .../42/cdad903aef3e7b614675e6584a8be417941911 | Bin 0 -> 208 bytes .../43/2faca0c62dc556ad71a22f23e541a46a8b0f6f | Bin 0 -> 207 bytes .../43/5424798e5e1b21dd4588d1c291ba4eb179a838 | Bin 0 -> 208 bytes .../4b/7c5650008b2e747fe1809eeb5a1dde0e80850a | Bin 0 -> 615 bytes .../4c/49317a0912ca559d2048bc329994eb7d10474f | Bin 0 -> 183 bytes .../4e/21d2d63357bde5027d1625f5ec6b430cdeb143 | Bin 0 -> 662 bytes .../53/9bd011c4822c560c1d17cab095006b7a10f707 | Bin 0 -> 163 bytes .../65/bea8448ca5b3104628ffbca553c54bde54b0fc | Bin 0 -> 160 bytes .../66/6ffdfcf1eaa5641fa31064bf2607327e843c09 | Bin 0 -> 664 bytes .../68/af1fc7407fd9addf1701a87eb1c95c7494c598 | Bin 0 -> 443 bytes .../68/f6182f4c85d39e1309d97c7e456156dc9c0096 | Bin 0 -> 755 bytes .../71/3e438567b28543235faf265c4c5b02b437c7fd | Bin 0 -> 207 bytes .../72/3181f1bfd30e47a6d1d36a4d874e31e7a0a1a4 | Bin 0 -> 163 bytes .../74/4df1bdf0f7bca20deb23e5a5eb8255fc237901 | Bin 0 -> 207 bytes .../7c/7bf85e978f1d18c0566f702d2cb7766b9c8d4f | Bin 0 -> 198 bytes .../7c/7e08f9559d9e1551b91e1cf68f1d0066109add | Bin 0 -> 443 bytes .../88/eb3f98849f4b8d0555395f514800900a01dc8f | Bin 0 -> 209 bytes .../8f/35f30bfe09513f96cf8aa4df0834ae34e93bae | Bin 0 -> 161 bytes .../94/d2c01087f48213bd157222d54edfefd77c9bba | Bin 0 -> 621 bytes .../95/78b04e2087976e382622322ba476aa40398dc7 | Bin 0 -> 620 bytes .../97/3b70322e758da87e1ce21d2195d86c5e4e9647 | Bin 0 -> 207 bytes .../9c/3f1c70db28c00ce74b22ba3edafe16d9cf03d4 | Bin 0 -> 208 bytes .../a0/65d3022e99a1943177c10a53cce38bc2127042 | Bin 0 -> 162 bytes .../a2/fa36ffc4a565a223e225d15b18774f87d0c4f0 | Bin 0 -> 167 bytes .../a3/4e5a16feabbd0335a633aadb8217c9f3dba58d | Bin 0 -> 164 bytes .../a7/b066537e6be7109abfe4ff97b675d4e077da20 | Bin 0 -> 621 bytes .../a8/2a121ea36b115548d6dad2cd86ec27f06f7b30 | Bin 0 -> 208 bytes .../b2/a81ead9e722af0099fccfb478cea88eea749a2 | Bin 0 -> 664 bytes .../b4/cefb3c75770e57bb8bb44e4a50d9578009e847 | Bin 0 -> 639 bytes .../c4/e6cca3ec6ae0148ed231f97257df8c311e015f | Bin 0 -> 268 bytes .../cb/49ad76147f5f9439cbd6133708b76142660660 | Bin 0 -> 641 bytes .../d0/dd5d9083bda65ec99aa8b9b64a5a278771b70a | Bin 0 -> 620 bytes .../de/a7215f259b2cced87d1bda6c72f8b4ce37a2ff | Bin 0 -> 357 bytes .../e2/93bfdddb81a853bbb16b8b58e68626f30841a4 | Bin 0 -> 207 bytes .../e2/c84bb33992a455b1a7a5019f0e38d883d3f475 | Bin 0 -> 208 bytes .../f1/3e1bc6ba935fce2efffa5be4c4832404034ef1 | Bin 0 -> 206 bytes .../f3/5f159ff5d44dfd9f52d63dd5b659f0521ff569 | Bin 0 -> 669 bytes .../f5/1658077d85f2264fa179b4d0848268cb3475c3 | Bin 0 -> 355 bytes .../fa/567f568ed72157c0c617438d077695b99d9aac | Bin 0 -> 662 bytes .../fd/8b5fe88cda995e70a22ed98701e65b843e05ec | Bin 0 -> 165 bytes .../fe/f01f3104c8047d05e8572e521c454f8fd4b8db | Bin 0 -> 207 bytes .../ff/b36e513f5fdf8a6ba850a20142676a2ac4807d | Bin 0 -> 355 bytes .../.gitted/refs/heads/branchA-1 | Bin 0 -> 41 bytes .../.gitted/refs/heads/branchA-2 | Bin 0 -> 41 bytes .../.gitted/refs/heads/branchB-1 | Bin 0 -> 41 bytes .../.gitted/refs/heads/branchB-2 | Bin 0 -> 41 bytes tests/resources/merge-recursive/asparagus.txt | Bin 0 -> 587 bytes tests/resources/merge-recursive/beef.txt | Bin 0 -> 1372 bytes tests/resources/merge-recursive/bouilli.txt | Bin 0 -> 1092 bytes tests/resources/merge-recursive/gravy.txt | Bin 0 -> 390 bytes tests/resources/merge-recursive/oyster.txt | Bin 0 -> 774 bytes tests/resources/merge-recursive/veal.txt | Bin 0 -> 1095 bytes 71 files changed, 125 insertions(+), 6 deletions(-) create mode 100644 tests/merge/trees/recursive.c create mode 100644 tests/resources/merge-recursive/.gitted/HEAD create mode 100644 tests/resources/merge-recursive/.gitted/config create mode 100644 tests/resources/merge-recursive/.gitted/index create mode 100644 tests/resources/merge-recursive/.gitted/info/refs create mode 100644 tests/resources/merge-recursive/.gitted/objects/00/6b298c5702b04c00370d0414959765b82fd722 create mode 100644 tests/resources/merge-recursive/.gitted/objects/01/6eef4a6fefd36bdcaa93ad773449ddc5c73cbb create mode 100644 tests/resources/merge-recursive/.gitted/objects/05/c6a04ac101ab1a9836a95d5ec8d16b6f6304fd create mode 100644 tests/resources/merge-recursive/.gitted/objects/07/10c3c796e0704361472ecb904413fca0107a25 create mode 100644 tests/resources/merge-recursive/.gitted/objects/07/2d89dcf3a7671ac34a8e875bb72fb39bcf14d7 create mode 100644 tests/resources/merge-recursive/.gitted/objects/0b/b7ed583d7e9ad507e8b902594f5c9126ea456b create mode 100644 tests/resources/merge-recursive/.gitted/objects/12/4d4fe29d3433fdaa2f0f455d226f2c79d89cf3 create mode 100644 tests/resources/merge-recursive/.gitted/objects/16/895aa5e13f8907d4adab81285557d938fad342 create mode 100644 tests/resources/merge-recursive/.gitted/objects/3a/3f5a6ec1c968d1d2d5d20dee0d161a4351f279 create mode 100644 tests/resources/merge-recursive/.gitted/objects/3b/919b6e8a575b4779c8243ebea3e3beb436e88f create mode 100644 tests/resources/merge-recursive/.gitted/objects/3f/d41804a7906db846af5e868444782e546af46a create mode 100644 tests/resources/merge-recursive/.gitted/objects/42/1b392106e079df6d412babd5636697938269ec create mode 100644 tests/resources/merge-recursive/.gitted/objects/42/cdad903aef3e7b614675e6584a8be417941911 create mode 100644 tests/resources/merge-recursive/.gitted/objects/43/2faca0c62dc556ad71a22f23e541a46a8b0f6f create mode 100644 tests/resources/merge-recursive/.gitted/objects/43/5424798e5e1b21dd4588d1c291ba4eb179a838 create mode 100644 tests/resources/merge-recursive/.gitted/objects/4b/7c5650008b2e747fe1809eeb5a1dde0e80850a create mode 100644 tests/resources/merge-recursive/.gitted/objects/4c/49317a0912ca559d2048bc329994eb7d10474f create mode 100644 tests/resources/merge-recursive/.gitted/objects/4e/21d2d63357bde5027d1625f5ec6b430cdeb143 create mode 100644 tests/resources/merge-recursive/.gitted/objects/53/9bd011c4822c560c1d17cab095006b7a10f707 create mode 100644 tests/resources/merge-recursive/.gitted/objects/65/bea8448ca5b3104628ffbca553c54bde54b0fc create mode 100644 tests/resources/merge-recursive/.gitted/objects/66/6ffdfcf1eaa5641fa31064bf2607327e843c09 create mode 100644 tests/resources/merge-recursive/.gitted/objects/68/af1fc7407fd9addf1701a87eb1c95c7494c598 create mode 100644 tests/resources/merge-recursive/.gitted/objects/68/f6182f4c85d39e1309d97c7e456156dc9c0096 create mode 100644 tests/resources/merge-recursive/.gitted/objects/71/3e438567b28543235faf265c4c5b02b437c7fd create mode 100644 tests/resources/merge-recursive/.gitted/objects/72/3181f1bfd30e47a6d1d36a4d874e31e7a0a1a4 create mode 100644 tests/resources/merge-recursive/.gitted/objects/74/4df1bdf0f7bca20deb23e5a5eb8255fc237901 create mode 100644 tests/resources/merge-recursive/.gitted/objects/7c/7bf85e978f1d18c0566f702d2cb7766b9c8d4f create mode 100644 tests/resources/merge-recursive/.gitted/objects/7c/7e08f9559d9e1551b91e1cf68f1d0066109add create mode 100644 tests/resources/merge-recursive/.gitted/objects/88/eb3f98849f4b8d0555395f514800900a01dc8f create mode 100644 tests/resources/merge-recursive/.gitted/objects/8f/35f30bfe09513f96cf8aa4df0834ae34e93bae create mode 100644 tests/resources/merge-recursive/.gitted/objects/94/d2c01087f48213bd157222d54edfefd77c9bba create mode 100644 tests/resources/merge-recursive/.gitted/objects/95/78b04e2087976e382622322ba476aa40398dc7 create mode 100644 tests/resources/merge-recursive/.gitted/objects/97/3b70322e758da87e1ce21d2195d86c5e4e9647 create mode 100644 tests/resources/merge-recursive/.gitted/objects/9c/3f1c70db28c00ce74b22ba3edafe16d9cf03d4 create mode 100644 tests/resources/merge-recursive/.gitted/objects/a0/65d3022e99a1943177c10a53cce38bc2127042 create mode 100644 tests/resources/merge-recursive/.gitted/objects/a2/fa36ffc4a565a223e225d15b18774f87d0c4f0 create mode 100644 tests/resources/merge-recursive/.gitted/objects/a3/4e5a16feabbd0335a633aadb8217c9f3dba58d create mode 100644 tests/resources/merge-recursive/.gitted/objects/a7/b066537e6be7109abfe4ff97b675d4e077da20 create mode 100644 tests/resources/merge-recursive/.gitted/objects/a8/2a121ea36b115548d6dad2cd86ec27f06f7b30 create mode 100644 tests/resources/merge-recursive/.gitted/objects/b2/a81ead9e722af0099fccfb478cea88eea749a2 create mode 100644 tests/resources/merge-recursive/.gitted/objects/b4/cefb3c75770e57bb8bb44e4a50d9578009e847 create mode 100644 tests/resources/merge-recursive/.gitted/objects/c4/e6cca3ec6ae0148ed231f97257df8c311e015f create mode 100644 tests/resources/merge-recursive/.gitted/objects/cb/49ad76147f5f9439cbd6133708b76142660660 create mode 100644 tests/resources/merge-recursive/.gitted/objects/d0/dd5d9083bda65ec99aa8b9b64a5a278771b70a create mode 100644 tests/resources/merge-recursive/.gitted/objects/de/a7215f259b2cced87d1bda6c72f8b4ce37a2ff create mode 100644 tests/resources/merge-recursive/.gitted/objects/e2/93bfdddb81a853bbb16b8b58e68626f30841a4 create mode 100644 tests/resources/merge-recursive/.gitted/objects/e2/c84bb33992a455b1a7a5019f0e38d883d3f475 create mode 100644 tests/resources/merge-recursive/.gitted/objects/f1/3e1bc6ba935fce2efffa5be4c4832404034ef1 create mode 100644 tests/resources/merge-recursive/.gitted/objects/f3/5f159ff5d44dfd9f52d63dd5b659f0521ff569 create mode 100644 tests/resources/merge-recursive/.gitted/objects/f5/1658077d85f2264fa179b4d0848268cb3475c3 create mode 100644 tests/resources/merge-recursive/.gitted/objects/fa/567f568ed72157c0c617438d077695b99d9aac create mode 100644 tests/resources/merge-recursive/.gitted/objects/fd/8b5fe88cda995e70a22ed98701e65b843e05ec create mode 100644 tests/resources/merge-recursive/.gitted/objects/fe/f01f3104c8047d05e8572e521c454f8fd4b8db create mode 100644 tests/resources/merge-recursive/.gitted/objects/ff/b36e513f5fdf8a6ba850a20142676a2ac4807d create mode 100644 tests/resources/merge-recursive/.gitted/refs/heads/branchA-1 create mode 100644 tests/resources/merge-recursive/.gitted/refs/heads/branchA-2 create mode 100644 tests/resources/merge-recursive/.gitted/refs/heads/branchB-1 create mode 100644 tests/resources/merge-recursive/.gitted/refs/heads/branchB-2 create mode 100644 tests/resources/merge-recursive/asparagus.txt create mode 100644 tests/resources/merge-recursive/beef.txt create mode 100644 tests/resources/merge-recursive/bouilli.txt create mode 100644 tests/resources/merge-recursive/gravy.txt create mode 100644 tests/resources/merge-recursive/oyster.txt create mode 100644 tests/resources/merge-recursive/veal.txt diff --git a/include/git2/merge.h b/include/git2/merge.h index de224aeac..a272e8be4 100644 --- a/include/git2/merge.h +++ b/include/git2/merge.h @@ -73,17 +73,25 @@ typedef enum { */ GIT_MERGE_FIND_RENAMES = (1 << 0), - /** - * Do not write the REUC extension on the generated index - */ - GIT_MERGE_SKIP_REUC = (1 << 2), - /** * If a conflict occurs, exit immediately instead of attempting to * continue resolving conflicts. The merge operation will fail with * GIT_EMERGECONFLICT and no index will be returned. */ GIT_MERGE_FAIL_ON_CONFLICT = (1 << 1), + + /** + * Do not write the REUC extension on the generated index + */ + GIT_MERGE_SKIP_REUC = (1 << 2), + + /** + * If the commits being merged have multiple merge bases, do not build + * a recursive merge base (by merging the multiple merge bases), + * 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_flag_t; /** diff --git a/tests/merge/merge_helpers.c b/tests/merge/merge_helpers.c index 986a365db..4b1b7d262 100644 --- a/tests/merge/merge_helpers.c +++ b/tests/merge/merge_helpers.c @@ -4,6 +4,7 @@ #include "tree.h" #include "merge_helpers.h" #include "merge.h" +#include "index.h" #include "git2/merge.h" #include "git2/sys/index.h" #include "git2/annotated_commit.h" @@ -239,7 +240,7 @@ int merge_test_index(git_index *index, const struct merge_index_entry expected[] const git_index_entry *index_entry; /* - dump_index_entries(&index->entries); + merge__dump_index_entries(&index->entries); */ if (git_index_entrycount(index) != expected_len) diff --git a/tests/merge/trees/recursive.c b/tests/merge/trees/recursive.c new file mode 100644 index 000000000..1d3586162 --- /dev/null +++ b/tests/merge/trees/recursive.c @@ -0,0 +1,110 @@ +#include "clar_libgit2.h" +#include "git2/repository.h" +#include "git2/merge.h" +#include "merge.h" +#include "../merge_helpers.h" + +static git_repository *repo; + +#define TEST_REPO_PATH "merge-recursive" + +void test_merge_trees_recursive__initialize(void) +{ + repo = cl_git_sandbox_init(TEST_REPO_PATH); +} + +void test_merge_trees_recursive__cleanup(void) +{ + cl_git_sandbox_cleanup(); +} + +void test_merge_trees_recursive__one(void) +{ + git_index *index; + git_merge_options opts = GIT_MERGE_OPTIONS_INIT; + + struct merge_index_entry merge_index_entries[] = { + { 0100644, "dea7215f259b2cced87d1bda6c72f8b4ce37a2ff", 0, "asparagus.txt" }, + { 0100644, "68f6182f4c85d39e1309d97c7e456156dc9c0096", 0, "beef.txt" }, + { 0100644, "4b7c5650008b2e747fe1809eeb5a1dde0e80850a", 0, "bouilli.txt" }, + { 0100644, "c4e6cca3ec6ae0148ed231f97257df8c311e015f", 0, "gravy.txt" }, + { 0100644, "68af1fc7407fd9addf1701a87eb1c95c7494c598", 0, "oyster.txt" }, + { 0100644, "94d2c01087f48213bd157222d54edfefd77c9bba", 0, "veal.txt" }, + }; + + cl_git_pass(merge_commits_from_branches(&index, repo, "branchA-1", "branchA-2", &opts)); + + cl_assert(merge_test_index(index, merge_index_entries, 6)); + + git_index_free(index); +} + +void test_merge_trees_recursive__one_norecursive(void) +{ + git_index *index; + git_merge_options opts = GIT_MERGE_OPTIONS_INIT; + + struct merge_index_entry merge_index_entries[] = { + { 0100644, "dea7215f259b2cced87d1bda6c72f8b4ce37a2ff", 0, "asparagus.txt" }, + { 0100644, "68f6182f4c85d39e1309d97c7e456156dc9c0096", 0, "beef.txt" }, + { 0100644, "4b7c5650008b2e747fe1809eeb5a1dde0e80850a", 0, "bouilli.txt" }, + { 0100644, "c4e6cca3ec6ae0148ed231f97257df8c311e015f", 0, "gravy.txt" }, + { 0100644, "68af1fc7407fd9addf1701a87eb1c95c7494c598", 0, "oyster.txt" }, + { 0100644, "94d2c01087f48213bd157222d54edfefd77c9bba", 0, "veal.txt" }, + }; + + opts.flags |= GIT_MERGE_NO_RECURSIVE; + + cl_git_pass(merge_commits_from_branches(&index, repo, "branchA-1", "branchA-2", &opts)); + + cl_assert(merge_test_index(index, merge_index_entries, 6)); + + git_index_free(index); +} + +void test_merge_trees_recursive__two(void) +{ + git_index *index; + git_merge_options opts = GIT_MERGE_OPTIONS_INIT; + + struct merge_index_entry merge_index_entries[] = { + { 0100644, "ffb36e513f5fdf8a6ba850a20142676a2ac4807d", 0, "asparagus.txt" }, + { 0100644, "68f6182f4c85d39e1309d97c7e456156dc9c0096", 0, "beef.txt" }, + { 0100644, "4b7c5650008b2e747fe1809eeb5a1dde0e80850a", 0, "bouilli.txt" }, + { 0100644, "c4e6cca3ec6ae0148ed231f97257df8c311e015f", 0, "gravy.txt" }, + { 0100644, "68af1fc7407fd9addf1701a87eb1c95c7494c598", 0, "oyster.txt" }, + { 0100644, "666ffdfcf1eaa5641fa31064bf2607327e843c09", 0, "veal.txt" }, + }; + + cl_git_pass(merge_commits_from_branches(&index, repo, "branchB-1", "branchB-2", &opts)); + + cl_assert(merge_test_index(index, merge_index_entries, 6)); + + git_index_free(index); +} + +void test_merge_trees_recursive__two_norecursive(void) +{ + git_index *index; + git_merge_options opts = GIT_MERGE_OPTIONS_INIT; + + opts.flags |= GIT_MERGE_NO_RECURSIVE; + + struct merge_index_entry merge_index_entries[] = { + { 0100644, "ffb36e513f5fdf8a6ba850a20142676a2ac4807d", 0, "asparagus.txt" }, + { 0100644, "68f6182f4c85d39e1309d97c7e456156dc9c0096", 0, "beef.txt" }, + { 0100644, "4b7c5650008b2e747fe1809eeb5a1dde0e80850a", 0, "bouilli.txt" }, + { 0100644, "c4e6cca3ec6ae0148ed231f97257df8c311e015f", 0, "gravy.txt" }, + { 0100644, "68af1fc7407fd9addf1701a87eb1c95c7494c598", 0, "oyster.txt" }, + { 0100644, "cb49ad76147f5f9439cbd6133708b76142660660", 1, "veal.txt" }, + { 0100644, "b2a81ead9e722af0099fccfb478cea88eea749a2", 2, "veal.txt" }, + { 0100644, "4e21d2d63357bde5027d1625f5ec6b430cdeb143", 3, "veal.txt" }, + }; + + cl_git_pass(merge_commits_from_branches(&index, repo, "branchB-1", "branchB-2", &opts)); + + cl_assert(merge_test_index(index, merge_index_entries, 8)); + + git_index_free(index); +} + diff --git a/tests/resources/merge-recursive/.gitted/HEAD b/tests/resources/merge-recursive/.gitted/HEAD new file mode 100644 index 0000000000000000000000000000000000000000..77e35742d01dcf26e0594d689548d3ae37549fca GIT binary patch literal 26 hcmXR)O|w!cN=+-)&qz&7Db`OaO3X{naMCs80swu12*UsX literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/config b/tests/resources/merge-recursive/.gitted/config new file mode 100644 index 0000000000000000000000000000000000000000..6c9406b7d9320db083eca69b3f8bee9a6c7b50d4 GIT binary patch literal 137 zcmYk#%?-jZ3KJaaM(b)IThRcka) zn6vinzTI-FENHqTG;JZL7ug4u#6zM7i5Th{J5BgE#z&9!LjG%xu(tTZ>RkRd-|~Df A#{d8T literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/index b/tests/resources/merge-recursive/.gitted/index new file mode 100644 index 0000000000000000000000000000000000000000..1e47851a50c3550bd04e7e1a481346d39b101267 GIT binary patch literal 632 zcmZ?q402{*U|<4bjxf!rYe1R-Ml%A%8G{Pq7#JFtFfcHF1xkqkg}nc7&I`1Uzu%R; zB481tQ+k%xk%n3Z-o)a9#G=IX(qg@miV~19Ky$+7kZFi{d2>8O z=gpcr*Tk?pa~P&Ea3rOsra_FtVa_~Mb68xwYr+B;y7fxxA2!T;9VL5@uc4KTfjcR` zG&3hB6YeUU?wXHk9%I{)XJ;0_$$B8tcggT)QTY8HLpjEH2F~=N#Ij1TX*k@q0M#63 zwv6@i#~tc#uDvhLxT0?3$(WKUM`ti_ literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/info/refs b/tests/resources/merge-recursive/.gitted/info/refs new file mode 100644 index 0000000000000000000000000000000000000000..96482e6cb196feb3c5c51b901f02ede9aa30f38f GIT binary patch literal 59 zcmV~$xe>r13m_Qw&% literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/00/6b298c5702b04c00370d0414959765b82fd722 b/tests/resources/merge-recursive/.gitted/objects/00/6b298c5702b04c00370d0414959765b82fd722 new file mode 100644 index 0000000000000000000000000000000000000000..d3fb85fcabae19adf089fc080e9075f72b41fe6f GIT binary patch literal 207 zcmV;=05Jb}0V^p=O;s>5GG{O}FfcPQQAjKi J1OUKwTBN=BVB7!z literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/01/6eef4a6fefd36bdcaa93ad773449ddc5c73cbb b/tests/resources/merge-recursive/.gitted/objects/01/6eef4a6fefd36bdcaa93ad773449ddc5c73cbb new file mode 100644 index 0000000000000000000000000000000000000000..90085847c54162c46a745b3561e2efa9d09a3cb6 GIT binary patch literal 208 zcmV;>05AV|0V^p=O;s>5GG{O}FfcPQQAjKNcK?DVcI~22@p9YGMvp&D4qwehTf=^DNYqjI@`Ot#YvJ KJq`f;l3aIJ+G3Re literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/05/c6a04ac101ab1a9836a95d5ec8d16b6f6304fd b/tests/resources/merge-recursive/.gitted/objects/05/c6a04ac101ab1a9836a95d5ec8d16b6f6304fd new file mode 100644 index 0000000000000000000000000000000000000000..c6a3a3b8def22521b0be327923d3bb028613e4e4 GIT binary patch literal 208 zcmV;>05AV|0V^p=O;s>5GG{O}FfcPQQAjKdv{d K)&Ky^dR($J31Z&> literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/07/10c3c796e0704361472ecb904413fca0107a25 b/tests/resources/merge-recursive/.gitted/objects/07/10c3c796e0704361472ecb904413fca0107a25 new file mode 100644 index 0000000000000000000000000000000000000000..9f48594b5e9dd2d86998975017e8b841120dcc46 GIT binary patch literal 208 zcmV;>05AV|0V^p=O;s>5GG{O}FfcPQQAjKNcK?DVcI~22@p9YGMvp&6G05AV|0V^p=O;s>5GG{O}FfcPQQAjK9+jN$ zO%DLOR++W2fmr~9up}2^BE;EY8b=2(r$nAcM=`1=R(>=s*0GHgVqbY79#}-sM+Sn) z4Pd}HV6h6fwv?(b>4i1v>r(Ps9{R{V{irj4i=R7C$tP_AyoYJ_M(;bvsGjz-jsL_b PT>E>xZL4|%(vDH^g)m9w literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/12/4d4fe29d3433fdaa2f0f455d226f2c79d89cf3 b/tests/resources/merge-recursive/.gitted/objects/12/4d4fe29d3433fdaa2f0f455d226f2c79d89cf3 new file mode 100644 index 0000000000000000000000000000000000000000..f0ea020fb001f27b4f65ca32006f9280676ad0e1 GIT binary patch literal 208 zcmV;>05AV|0V^p=O;s>5GG{O}FfcPQQAjKNrj^%~6Yxstxo^mZp7Iv;f>@s$ z+FYKFlXO5E@vh^#(X$OS+2u^0K`m1oohQj`d*}B$HN}$TOftI#7fkFrD_{mjyHe#q z>rEBrEy?79F8|3Eod1VaRu#?o7)DNK%64Xo7zYmhV+BHoj=D4sL;XJ{w!-8FNZgG8 z$@i3;FlZ=_rP29n%ot-&9j*gralZ}+Ku!r{+j@RqZ4~%uz;y7C2)=2j0Ao~FH4&V4 z_H#8#M|m8DT1H5LHr7NWCkwTCa$>M3mjp68Yx|xgE==7N5l>I6P2zb!YfkC-C9$l? zl-iwohB%hSNOnnMIN%kj-p5I;joO6bG}OhAT_`S$gf`Wwf)lT^lNF;eVr%WeHFY=< zN=ED$IDEhQn(T%HWUi^{2Gx0@%V6}Q+6dJYP*@ag;4Y&XvN40l&8KS3TX6shywzT) zE8WZi9L=V|bS3p3`Kez>8|qK=7!z{qCW}7M9t$mYuYI!A$KUWdxs}0qu{nxyp`pPg zL6UY>?bm9+Gc+Ygqh6wMum-+Nyug{71`WLZ)$f9tpym45Hf=EO?sYYEqGVeAl^G76 z=!gDaY=0&01cSR$HA_(ot-gxerXqN+roGj_zMDjI UDBY|+At``qBPE~AAEX6|z4XmEIRF3v literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/3a/3f5a6ec1c968d1d2d5d20dee0d161a4351f279 b/tests/resources/merge-recursive/.gitted/objects/3a/3f5a6ec1c968d1d2d5d20dee0d161a4351f279 new file mode 100644 index 0000000000000000000000000000000000000000..f39a1271fc3ea3223935f59995dfd19bc503e815 GIT binary patch literal 162 zcmV;T0A2rh0i{pd4FVw$^qVSZK(pY&LSl?R*MSZ2SaK%bVGy-_(b$21^TCeflPfAKm%vzCMmXyf ziL8x2xr{}GN1tnxQ+|b(<$12ly{_`WL;au=e~lm8rMeuYLNvyJvrcXS0mM+p*v@~} Qh$)ZDPYze{1{JSPI$SSJ%K!iX literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/3b/919b6e8a575b4779c8243ebea3e3beb436e88f b/tests/resources/merge-recursive/.gitted/objects/3b/919b6e8a575b4779c8243ebea3e3beb436e88f new file mode 100644 index 0000000000000000000000000000000000000000..c85731d6bddd857db09da0d014be4038dfe35be3 GIT binary patch literal 208 zcmV;>05AV|0V^p=O;s>5GG{O}FfcPQQAjKTj;SFV484ZsWk8T$lY^VAlR8|EF&&z4D;^ KmI44rFkeE4X<!?*!?#? z_;cH~%K&1!8C?~Sa}e~BEm}!d;zB_p7uLKK8&ar&(AQ#KrRzRmsl=5qRmI4bY7Dt9 zBED2y$cvKKNJ;c}PePR?Xtp_qNi42#aadGw;;ndMTisnW@;27i;jz3+FYvs!?b>!Y z=}bS>S-*-OcbnUG57v8TwhjXv(Ic9f&T~Wmi7`*wUlhJ+aQN$m16=meAa&XE`fzmS I18dK3v%N-Vt^fc4 literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/42/1b392106e079df6d412babd5636697938269ec b/tests/resources/merge-recursive/.gitted/objects/42/1b392106e079df6d412babd5636697938269ec new file mode 100644 index 0000000000000000000000000000000000000000..3a8324c1b1bab7a033edfd165fdba6cfb84bfb39 GIT binary patch literal 163 zcmV;U09^lg0i};o3c@fDME%Ywasg!%H^~-6{OJw6K$G32f^DQmy}nhvfqye^V3;X& znl87akNM3?>1p_K6V|Tqxm~H#(K^HskfMur3kYCVx{ht~ RXN~E3z5JBnYTiBXPm^J?P0RoQ literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/42/cdad903aef3e7b614675e6584a8be417941911 b/tests/resources/merge-recursive/.gitted/objects/42/cdad903aef3e7b614675e6584a8be417941911 new file mode 100644 index 0000000000000000000000000000000000000000..99b5e6d2c8f1feb318ae3effc47c16d1f66918ce GIT binary patch literal 208 zcmV;>05AV|0V^p=O;s>5GG{O}FfcPQQAjK5GG{O}FfcPQQAjKVORhF literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/43/5424798e5e1b21dd4588d1c291ba4eb179a838 b/tests/resources/merge-recursive/.gitted/objects/43/5424798e5e1b21dd4588d1c291ba4eb179a838 new file mode 100644 index 0000000000000000000000000000000000000000..58ab2391707739b6ce0fe4b0c7c9f33400b20ee7 GIT binary patch literal 208 zcmV;>05AV|0V^p=O;s>5GG{O}FfcPQQAjKX{GYz9^vZ+s KTM7VwgIs}8-eWre literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/4b/7c5650008b2e747fe1809eeb5a1dde0e80850a b/tests/resources/merge-recursive/.gitted/objects/4b/7c5650008b2e747fe1809eeb5a1dde0e80850a new file mode 100644 index 0000000000000000000000000000000000000000..016398531ebf1408a8bcff0d4a2974da890c3874 GIT binary patch literal 615 zcmV-t0+{`H0Zo(5j@vK{gnRZ=@BzF*+grQ0qCgv9fi2Ko^eo%7Em#pD%8Onl|EL(9jB2A{ZB9%z(Q zDp~`0c9}Zy!LU4TnP`R_a2j)I$sDeGffp+4!3AhA43rTJ zWFou6(+HCX3{H(@VP2uCCwfgfFK{R0k?|pZ5Tn=5VX^q(kEe+?4x#DTDaRH8q9={` zWw}8EEsSAvd9G9{tKCHm=?0zGU48B3V`RP-+bXJ(v;jb>SGxw2^@RZPNXkU^> z6Gz{R_OmI(24P;kl#I&RsBV>}TARmX?7g^Q>{EiS6pz508ZlJQ-6Vs%~M z*Ma+pM6e6PV2lD}J@`D|vUsK*C(2mlkIO%jE^wf>mCH&U9&2BqrrV&ut0!AnSYv1%RxAJj literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/4e/21d2d63357bde5027d1625f5ec6b430cdeb143 b/tests/resources/merge-recursive/.gitted/objects/4e/21d2d63357bde5027d1625f5ec6b430cdeb143 new file mode 100644 index 0000000000000000000000000000000000000000..34f183dd17d3105fc11c39606b2e10b2924c3024 GIT binary patch literal 662 zcmV;H0%`qt0Zo)abJH*og*oe2EccL^a^R9v4(ZSthJ-eyXW3rc8q1Q=${6$Oc`GNt zt&yeGd*6F%kLet8AD4_Hxcb!nhHpBD6nuz3N;Wqb93@*xZf*3t(n}#HgOm!a-PeYSU;(0x2 zPHFojah{MVRVy_Nb1XX}*(Jrejn_$KKUNB0#WY1^TE~!Gm|f@y+{>vMD_+m`R*c4o zTT2gase?qAGh)Yqjr)yjvI`cFxu&K!sLwq;wMKswjBrgMW^^sJTxT>x7G~(Ub1Gh&ahNcABDN8gCXuzfC5oAgl)bjGzzYC^^mjyW{ybf(J_O9h> z_(aLH`V%tm7XuWuD^;O_mv<9oSI z)1_IDxM_>3W%BI2Q|{v6TnI=Kg~ex~sM+@gV(Ett%#9bFnZsr1=XSYH2kQ_&04er%3kYD=bcJpD R=ZrbYdikk*HE-92PWSkwP(uI! literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/65/bea8448ca5b3104628ffbca553c54bde54b0fc b/tests/resources/merge-recursive/.gitted/objects/65/bea8448ca5b3104628ffbca553c54bde54b0fc new file mode 100644 index 0000000000000000000000000000000000000000..031c91359a1032ccb0cebabf44195a087d265f35 GIT binary patch literal 160 zcmV;R0AK%j0i}-74FVw$ME#};8qlyT9FQ2}j~&>+9=n$_k;5Qr`<})Q{F`}`OkS>~ zT)MWHHob{xu{pYNL`=z&^L_*h1v*Yb2aJ4U!?JAu_OK&(^Sr zVHkiMdYEiTiXMHgO`rHhjrDo1_iV1m_K&Yk4=R+m`knz literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/66/6ffdfcf1eaa5641fa31064bf2607327e843c09 b/tests/resources/merge-recursive/.gitted/objects/66/6ffdfcf1eaa5641fa31064bf2607327e843c09 new file mode 100644 index 0000000000000000000000000000000000000000..8d6be4216a30ddcf37e38c8dfa900b9b9c2439bf GIT binary patch literal 664 zcmV;J0%!er0Zo*#a@#NvL{sA{F1?}|r%0npg*@?$$8u~ru0irhVh92Z4h+M5efB^p zNoRq;VfXFAm5&wO-F^P@;rr?MNU!I&=e;q{Zx?!ax}51q&*uwWzP_AJ^zH5Va(Sim zJ-r_OO?0vKod_BCz|3M8g6!ELqmCq zxK)oFg_$!mkR7K}WGTX-awVdkXoa8_Py%U3r@|++>&)TLTi6c|pN5s?6WRrMa z51LcjK1rM>q)gRH4Z|GE&PaAiF>d2^QrVA{0$4Fk5t-I8WEW-^Is*4{YQ~D!v%M9g zG2+(JgKO#_5$258abV+q<(lk*1!S(N=?&_0PY^Q-~Q|OD)$K&5(r|I&Pc_ znjf>nkibjng;J>p4$x>84W^z`3Ia1k_NTB{PpjG>EUHTjtQ?r8;rec zxf(uEGOhl^41#-l*YBfkuEL$*;Hpy1IIED&WXY_&Gg#aD6oX&)bPO0}Q@*j)S8=;( y7Q9ze-RfW7O`;*p^`M-P6ozRdCF6g`1trr(3nN{hSC9xyiE9x0X#N1NX^iCWjYJFp literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/68/af1fc7407fd9addf1701a87eb1c95c7494c598 b/tests/resources/merge-recursive/.gitted/objects/68/af1fc7407fd9addf1701a87eb1c95c7494c598 new file mode 100644 index 0000000000000000000000000000000000000000..6aaf79fcbfc06afb1e1f44d7b4d3b28dc0039f73 GIT binary patch literal 443 zcmV;s0Yv_I0cBD^J)#)~`ji=kUB$8BMjIypcL0h$;xRP)6!ZczhVDt&1Uz7p0H#<{OJl97U zgcwL^i5W6ZZB!^p_&s_KCn&Y+wT76b&1wP);T2CVV{KWjLBcUKIyRwQV5gK<6 z)~_RqSxxl-GK~?&j23};H_~@_E=n^{u@yQ>XL$7&gwgEO=&L0>iH;?yFt$ALrztI(nqaC8z&a>7Zp&I8pAN0WCFP$2O-q(?ym5+LeLvPrCSY~yt{$?L+G6)tk4kU%Y>M`aoYkefxZI?kit~>LRrGIFjO%(nP(;)X}h2946ur z+LbAYF6|e45M+MnQfz#Cg!Q=4 zcScoIbgOWsAqe9+zywtAm4JvTr`nO`;^Q?4rJEG{3*AXqz;l)RAP<^TiqjU1LQY#8 zWu!jvaHT9cOX*tOx+lA!9O@(b7D2)2Q&eZP)c?X6q-l}(Qc33dRH8Kk2>NQ?wqlvpHMgV+B-53jsBV)y09GA#Q*rNI9BU?-PR8n4rX8b{NiUDrkJS z#>IVIL}6sEP#W!F$k9Vhr9Eu{287ne%oiFZ_yGf?T1>7bFzwL9(DilYug92+rlY;JP3e_oWtY%)Op0?3(po5hq;V1r2sz+akEz z?=)AlD5y6_xc@uC++(7eNLWJI3%(6++bHOZX5GG{O}FfcPQQAjKTj;SFV484ZsW?AiFEQdC+9rnV945H2X<%(J;g~EU(}5nuN{Vx(L{|D_S)wu%0h7* zeMH0%tsDsuDSGs|HW>4ZT88snmwR2|z(POOiNAwiw@Y<7f5GG{O}FfcPQQAjKO^aWb JodCsxT!hleVc-A& literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/7c/7bf85e978f1d18c0566f702d2cb7766b9c8d4f b/tests/resources/merge-recursive/.gitted/objects/7c/7bf85e978f1d18c0566f702d2cb7766b9c8d4f new file mode 100644 index 0000000000000000000000000000000000000000..fe8b15777c9b82728282919b53e65c78672beb47 GIT binary patch literal 198 zcmV;%06G770i}(xPQ)+}M5+B1tE=H;=Nu=I5P|{;`V;-e-dt9Sy^-x)exHE&1G<^_ zq!}+Ua)qXM4>c2kZG6Bm=nK+xp>A}>x~?VH_7?k*tmy`824fU%b(Re8VaFWcI!i2) z;F%8klV0gp{I#=}_yWf2)-|T>H9TpnwL0i=Ug@7R>N9a=Tp-h(3rkY!4JO*5$hIEP z^GXG#ED=uEnc$1_jT0k$$X00QiB6AzcjN`fg@6;(nbf+C3wsC>k<(dy15#OGDOags A)Bpeg literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/7c/7e08f9559d9e1551b91e1cf68f1d0066109add b/tests/resources/merge-recursive/.gitted/objects/7c/7e08f9559d9e1551b91e1cf68f1d0066109add new file mode 100644 index 0000000000000000000000000000000000000000..48d22f6a920dbfbeac68d36f21840d9254bf22bb GIT binary patch literal 443 zcmV;s0Yv_I0cBFXZrm^o?yRR^cQ;dk44FH0O3|b!I?6U>5hsg|M4jumFDc(8Lr00^ z_eYM2M|gbv`sw-4%j>tF@bdiY$7kn$`x?RL8Rp_CgX|1%%@?V_0r;qbr4Fz)0g1Q* zXV^)iJ__PTr`x?Y4!3X4#JR#0dE0P?wrN3ex!meC(S)5Kq0bQgstl;T#hH@olRUx5 zlz^0$Qi6hWn-q#Oeu+MX0jhMp)({J~MNL2@yyD;rN-Jt5A|!fiGy`Sf{@z$lGip__ zP6OsN6x1Bv{TjKulPk~xz97^V0!@Tj(gCy14?Q`FG+po{tlYLUp}?)Uy0In^TIw80 zzs@KYHPr(sG)0&SS_J0ZL?4(gy;$ilWZYfy>H(Lf!ibu)t^iZ|NXSFL9ahRsG*usT z6CLNKi}C_gZH12V1HAeR!en+Nda;CO*0Ib2Q!8_NH>E{W6HK)MSO;a7+Pc*zs93IO z(|5l;ZeQgd;t9W_64~___4i0QXUzR9bn`RSiMtIGX)Ahg{{W#06#c{j+qVD! literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/88/eb3f98849f4b8d0555395f514800900a01dc8f b/tests/resources/merge-recursive/.gitted/objects/88/eb3f98849f4b8d0555395f514800900a01dc8f new file mode 100644 index 0000000000000000000000000000000000000000..41c812f10d9ba495e041524671e43bfacaf76380 GIT binary patch literal 209 zcmV;?051P{0i};SP6RO!M2US0XB!Q&`{R$aLTo@t#s&OoGaJkp86&RG0Lux8s_Ip% zr7C^fu2Unx-5es?TNJ{;&SwZr2*@opa9pTxHjoK@@vW-2G-RKez-EkKjT7TzZLX4q zoN{G{&P5+FfQwT8?h~|xuC+pm9VY-30Irs^4c=1=zM4YKsPr+{KJ-)lOrz?TwQuiz z*JnBCw|kVI;+F19-yXCjVx|xx>&1{U>Y&HCDgS(&Liz*)u&&*EO64-efAr_ LELMF1OGsspd1+=4 literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/8f/35f30bfe09513f96cf8aa4df0834ae34e93bae b/tests/resources/merge-recursive/.gitted/objects/8f/35f30bfe09513f96cf8aa4df0834ae34e93bae new file mode 100644 index 0000000000000000000000000000000000000000..1011a885dad02485ffb3df66146a55cf0416c94e GIT binary patch literal 161 zcmV;S0ABxi0i{pN2?8+?^_(iwfRcY^LBz{;U;~-VgcV#PF>3opu>)`K1MidTx}Li< z&TV>QmTV@Ag@_Pz0&fvf2L$xM0fGs|DsVbEaZ8P_UB(=-fafVf(WD_OA3}-BkjWTh z2smXRS44XBr8YU!D>ag*rLOmSm3toQ2Oarq{Matn^&qu#-uuyKwVy1p-r|;GVp2~W$cLKNM%oUK{=F;c3zVALLE5QQ@Nl(JJ(P;zT>A#b=A* zgg2yiA1AFgW)q6j(U4;CvHEx=w5d&1oCKSlS)Ij*t*r;Q)Zs*|1+in`^!?^*<{byf z+)}d*rt?Bile3RzBUDpFVNtY6hJt43E&?8RpPDr<)dM8T-g;rK42wi?bh`yJ)I0{{ zXMQ1VsK3ysl#$yoGx|VBs zmuMWUfiJVHaHgd}lk9)>`{-t9xjnYs8jQO~TMeBknN@!ifrA(NVgFYiZ^XS~@Gz=w ztw!V&*)nVI4ARa%r5KJ2Jw`y`ec!#cS8?A|74Oyc_xiVYlWB={Sj;CR1u$!*mW%rX H{Cb92!PzdT literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/95/78b04e2087976e382622322ba476aa40398dc7 b/tests/resources/merge-recursive/.gitted/objects/95/78b04e2087976e382622322ba476aa40398dc7 new file mode 100644 index 0000000000000000000000000000000000000000..e3d15aac36c0fbbfd053d8ab640d1422fdfebd9f GIT binary patch literal 620 zcmV-y0+aoC0Zmi8uGBCPrS?}0eON(3fwrOm2?>cSA)uZllZ_R}&h^-Y@b#Q=c7ZaE z=gfJz52>d&uiw3W@%_X5&-C@nx2KoRJ=H=!mPAZjDpckyLeG_RQA!i-TqJk*;}m_0 zN&`l8kI*SooTMzE3!--f6V#mPg``y>fI}VV! zrDhvU=Y>8^&OVxrP)!kqMbRc13Yww22zWevYSuhg50EH(>xH>8EE2)d?H0^X^B9ny z`GvHh{z4y9MsCB*=mQ<8(#l8c6VsS}!{_Wb0ppcRQs-kwlh2AIc`@zxYQQrzC2D70 zqH(YWzRa@1nU)4kvj5fZqnn}S{@8YFFzz00HFTn6R{c!`4qoVo{a<;!6ZeY2!>GEo z8j(|E%dEXKNIUzKVmL1JJ^~8w`{Avl6NZB)akV zn~^5Bb-nDs!Z&+21C;C)on}JPL>dEojZ(yNDCCo`p3&7Zy=u2@1eL3(w@f+uL6o^j znX#DRz)2ko)%h;|@}aU+##9ZX5ZCB)4XUnG4D8g{S>&WP>D#`v4v*zsdx7Vrt=G1} z$%gx>&i3{Axo&e??}3~X5uzw?M29#HcZ}QZpEc8y^%sNhHaPrs!T~PZ-XL||^73$` J=>uRAa5Ko2Zmj?S literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/9c/3f1c70db28c00ce74b22ba3edafe16d9cf03d4 b/tests/resources/merge-recursive/.gitted/objects/9c/3f1c70db28c00ce74b22ba3edafe16d9cf03d4 new file mode 100644 index 0000000000000000000000000000000000000000..b0ef1af86c8ef909ea5a8c752c205e591fedf38d GIT binary patch literal 208 zcmV;>05AV|0V^p=O;s>5GG{O}FfcPQQAjKw?ZxlQ5_CD}FxvcBC zX+Yex%B(FQp)f=ma2SMA0x^Q)NB~YC`$!>X8PqLRzBcW%pCybOeGp4FWHUM^-T*x;%4xSN@mOlDG@ z=SPzo!lA9q(oh%zIrh<_B|r?xYcNb44I5$t)1fco8CPDK#DrA5<$%5ndGJYD=L#yF zbs|LPs25}?BJORfs~qzyu36ruI&XE6XYT1oUHJ=s?v(0$kpqCW;GMGas6Z*v(>}KG VpEY94{c_y;g?QgL@dgtZQTd25Q}_S? literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/a3/4e5a16feabbd0335a633aadb8217c9f3dba58d b/tests/resources/merge-recursive/.gitted/objects/a3/4e5a16feabbd0335a633aadb8217c9f3dba58d new file mode 100644 index 0000000000000000000000000000000000000000..00f9c2ddd1d8e6b2df28ccc58ebedb4e3369507d GIT binary patch literal 164 zcmV;V09*ff0i}=K4FVw$gngz88qn~wu#gzz%XMG_!0zQtJTZvczG&>gx0!E}$xNy1 zdhXHyYQpSGzyV#(Xy$BVF0%$gaZ8P_T}HGSl{JRZ1xf)~7dD!V zj*fyaj)9{G6zS2I+T=v9)JUF|y58$m?s?FUI`TL8xm~I2L23Z!oHoJBtpcUQpkr+3 SKWoH9lIJ-a@ z$8+Yq+=tZD+c)puz54#)=`(%(^6mNJ+;c7DV@brcr9x%SBJ@%@7o{}O&P8%}KTgr7 zs5D?iR}P`06vgS5Qk-hA>wVy1p-r|;GVp2~W$cLKNM%oUK{=F;c3<2ht)u`f#+VIn}IJ(#5a1;LR5xTw{XwHZoM`8?_-rwp z@P^dxM!&$W#l%@j6TqjDy@99J~55yH+;^16EI%6By~P^H2JJZk{8o{uLe9rQ=)d} zB^n27;L9v4oM~y$B>P|eKDrrN?vHJ^2IKD0RzoLBX4T(B;NXRR*#DKsJ8`cVJdCPa zs}VUxw#?c)gS4|xDTd=hPZ3af-w$u?RXjFT#d~%AqyFvPWLjb!7V`;70n8ey<>LMT HT=<4_?*22G literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/a8/2a121ea36b115548d6dad2cd86ec27f06f7b30 b/tests/resources/merge-recursive/.gitted/objects/a8/2a121ea36b115548d6dad2cd86ec27f06f7b30 new file mode 100644 index 0000000000000000000000000000000000000000..e740872fa03f7c70cd80cba278edec8365618b7b GIT binary patch literal 208 zcmV;>05AV|0V^p=O;s>5GG{O}FfcPQQAjKTj;SFV484ZsW<738(nBvk`QV@dir7t@=1fT|i4aAqT&k-2^_`{c zwzrrfmosmMseG*H;o;Ng58qG6uk?C;yX=j*yj|((`Ff@!UCvj!et9{a=-b=z<@!qJ zM|wYAPcJ*lePX5oJmIO{f^GhCnHmgp`AU&mMU-SfhL|NPBg_iG~DdShKBMI zb%R)+ceJ?NZ!2jVZN$5pMR$0%fqFY0@K+|6sfx~%WVVg-YdO`&Imv-!a3eODSl3pd z42o8j%7G?GbRkDQZ%KL=bo5WQ(ER^cRaK@LA4A9KK-ms3isP6=|5QQH=A&F1+qQh~ z5?f(%EiA4^Fv&NRoG@hQ97~<^1xy!XLp8Qz%;9dX&3PsA8Mpd0|aNaam3&>nk(;L+1o}OBxKMF>;rVul_mRhbenjs4_blf== zG(TpCA%U0D3#C#I9H7xG8caQ>#v?!Fg|y**PmeJnx4O6J1FdnU(XORWmYVn*oRgav zibtEH7#DWbx+F-_4(k0@4KPDfg6xzf8V5As((?#1B@JqM`Rm^W)5FVx91~uLHW+)? zay5LSWLo`+83gzAuHQ%7+=M&9!BwT2aaJLl$&y)lXRx;QDF(mp=@>A|rhI3sui}2w yEO@V`y4SzFn?ysH>p?joDGbv_O2+?=D@vw|7Dl>0uOJba64xNKH-7-HgN*UF>qEl; literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/b4/cefb3c75770e57bb8bb44e4a50d9578009e847 b/tests/resources/merge-recursive/.gitted/objects/b4/cefb3c75770e57bb8bb44e4a50d9578009e847 new file mode 100644 index 0000000000000000000000000000000000000000..836bb4edcb1dec682ff243dd480df1024b5c1553 GIT binary patch literal 639 zcmV-_0)YK^0Zml9uGBCPrS@0M2ZWWNpxNpcAR!@fC0_L;nQW{$cCN=JgsoAr8w1K*ZaW3LYr)xWZ=~}%GeRdk;Ep1!KGnf1v4-@jH*Q19;z_Uq_dB<{HHKD z{|{@d8k!3!-XveC@FJ8j4jlT&3WQD_ZE2dO_WhQHRme|}csK=87%6)d&@ddPn-9&H zTS_AhxDJ@r|2iE2IU`WG5AwR%sPNH&=@cLleDgsO#+a^VA~+oqmS&WV%I&7q3qp#t zizT8ZGt`#ZtHYvFGsxI1k0WVXg@!pHo{=`r8sxZIPWk+#scy)W`h!M+IML2&@!4WH z;SH(X$4RS=*@WVBG^AL3tUlfdZE8~$C&6ZCR%bC{YwN*1bvO}gLF^bfeZTvfdB*`V zx72Kd>AcX#$=Q!)BUDpFVNtY6hJt43E&?78pPDr<)dM8T-g;rK42wi?bh`yJ)I0{{ zXMQ1VsK3yMl#$yoGx|VBs zmuMWUfiJVHaHgd}lk9)>`{-t9xj(ku8jQO~TMeBknN@!ifrA(NVc%CC@5H@g@Gz=w ztw!V&*)nVI4ARa%r5KJ2Jw-s_eLuXlSMk_X74OyckNUTFlWB={Sj;CR1u$!*7W{X7 ZMak@tA>=lf15QMtECU?6xIZ-FkkMG{L{+DzX0l7ngPDQ6qH@4`Z1v)B;k{EET)RHf_-&f9U0!fjS z`XoJGUZ0;XU++J^xPE+pof#bXwHmP}3$b>vlXKxQayA7iCMh_$#kW-I)?tsfJTTXXze?Gn-CKv9j7x_W zHAzacAF{2;z^WKy;la3Z&6Dhms}*uz4+zcMhaz=eK+woHepo4&oA)xfpxxpLM};ir zrDm*BxcTK^LfQiQ!ZfxsqrJg)fl;6Mq?<_AsixL-t?FU2Vjxp@-eXFjaRh}aX2z80 S=1+q8cKeOjJBNSmtBjvLQHhWM literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/cb/49ad76147f5f9439cbd6133708b76142660660 b/tests/resources/merge-recursive/.gitted/objects/cb/49ad76147f5f9439cbd6133708b76142660660 new file mode 100644 index 0000000000000000000000000000000000000000..849668c8b64d036d37466e7d3036b4c2dd30ec16 GIT binary patch literal 641 zcmV-{0)G8?0ZmiOlG88{G*}7&o7UAV;)~F^zij^rXxL`FLe3*bUM+um*dmrna-c+ z^>{fw?I;h4nPPA;2(=}XOxF7yPT0sCW9W;g*i++eJJQVa%!%e$LdV^XZ0IO2Q7?$~ zc}I)O!*-H3Xd~XWEPBJU4KfM1zhrY1U1lG%37uXSpOCCPzgbQ3O^*tS-{42)K# z%7JE3bRkEbw zRTIH!Wj|J|n)cjM!Rx za7!Idgpv_E1~%Vsz9zfi0GVrQx7h6Jr`ibB6klA#JGN)2En_TRT|vf!0`PvTN;=r7r%4&&kaU#*@ua zj0-#JT@oZ|N7a6-20TMkg6z~wG!E9lmw_iZQ`4ZHm%sX5FaxwK$T8t{XoGQgt*fCE zCDZE9%y4i|uljwm-Ho^t46aJmOht)oB5P*#ok7~xrx^UYr(*z=P5JJvzKZ*%B6zQ+ bx!1qGn?z$M?WjH>DS&AsCGX82&R2r-HC8|q literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/d0/dd5d9083bda65ec99aa8b9b64a5a278771b70a b/tests/resources/merge-recursive/.gitted/objects/d0/dd5d9083bda65ec99aa8b9b64a5a278771b70a new file mode 100644 index 0000000000000000000000000000000000000000..b0d951c9e75d5555fc1c0b95e1b8d44bbee483e4 GIT binary patch literal 620 zcmV-y0+aoC0Zmi8uGBCPrS?}0eON(3fwrOm2?>cSA)uZllZ_R}&h^-Y@b#Q=c7ZaE z=gfJz52>d&uiw3W@%_X5&-C@nx2KD9PqmPbB@xq>3Y9sF&~xQnl+r{y7s=iII7OeL z(tr_NIfRZ<6sKECajLeVNabd_p@7evq~? z2uGTEy;2ZRE7T_+NQ?03!_lVZRI^@57r)|yOT)klW?*y}Rf)7cRAHV;XCH0(PhoKW zAJ$kkG#665Nxo9yMJQn$IP{Md2%S3G(lkx&|1Arvke?v&a0;X_QuZpKVK_`TADS_@ zltvnG9Wbl^bvgiYMxbyXa5^L`%_tj{+fAt#gcNBP zOGHa%s4cTshef4kkg-`FN7A$k4Rb;~BW;{D$Z@rt^7%_s-H<8u2aN)8qMg&?v&C@2 z8&bQElU5tE3B~DXNU``>eY_Fc)TSyanl;bW10>4cdSR{%i$rjAy9G1UJO<=v zej#nBztG2&k=rmc`anmjwDQsV#5AVg@HzWUz*0QkATAaet2uI;<2eJ-mB{$^>6Pc(-P~jm`_LwVAe=2FWnzp G-iBs$mNeu5 literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/de/a7215f259b2cced87d1bda6c72f8b4ce37a2ff b/tests/resources/merge-recursive/.gitted/objects/de/a7215f259b2cced87d1bda6c72f8b4ce37a2ff new file mode 100644 index 0000000000000000000000000000000000000000..55c1983a8cee9611837f6ae359504e403078d219 GIT binary patch literal 357 zcmV-r0h<1J0Yy?xPs1<_<(yw(?h`iz5~rQGATcra1KiYIqh?7+9H#wyUeW@mrq1*G zurv5L(Bt#d-Trvkf9zjRM>@Wr4)?}<@**_Fn#prM3k@~cSqjC8xFpVeu4PBXW==v* zDL5I0NTxD3=ZgKp{7+VNlKDCVPUT?hR2cg8tJQY)*ff`Fhu89L3O^L z=+_N|zp7KA5+~g?P%wwn+hK#xIo5NtRh)dws#`QO@&USLM1D+ZN7vcenJ%>`4MNCh z5MgPfXwVe(r4{kt@!+&*SmZxcpFqR5fno&aZyOu;%p<7L;o0GYmGop-Q4L7ebc)~- z4ln^{J(kK@OsUi4tdpSrMkChOg09+KbMkl$AghX%^?_cTU$(T8zxykw>B0N}=djOq D3bL=J literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/e2/93bfdddb81a853bbb16b8b58e68626f30841a4 b/tests/resources/merge-recursive/.gitted/objects/e2/93bfdddb81a853bbb16b8b58e68626f30841a4 new file mode 100644 index 0000000000000000000000000000000000000000..fab55fea641a6f1468010aec61395fccd7374c4b GIT binary patch literal 207 zcmV;=05Jb}0V^p=O;s>5GG{O}FfcPQQAjK05AV|0V^p=O;s>5GG{O}FfcPQQAjKBRoFqh2M5$J? z4c>DLzM8_#{O%cTrij)!H9pqnDqGAcS8?QA^pOI(sAWlSbL|5j>U$a$p4Ps-_8o5Y zNI%t`eic9Ny7cW9EVBrQXc5kajaiQLI5+j5nB`H&v%)tGPJg{{g3CTTicf{M(4xzxK`?T zz0m&a<$&4a;X;?!({4xKuG`b)OotbG-(Gg76{RjPlXu3uNOevW2W{;NC#>S=y=${2 z-%@3D-P6e9$bm+mUBk_av}-6$UIwDJX+@Js-EtBZXceugIm(1(?Wohk2EP)SM3py| zVq)DGJD07_=MXm(doy4_`MTB-%)n?Cs_bY4MdOl}eNC}5PN09X2Iv1_g;haQ*1H>r z4JF+}DAs{P|5$<0qN7~u+qQha1=f+tw2(Nf2qfE3Fp)t+a5UYFEymouZ>YvNUt-VXeW#euH-^*6UiIv?>MTts4gxImL_Kq!2{KPM$4fSh! z@d3HjokkyM_L&Afmp*A~{BQUi%*bFo=;Wg^ZbhvL5lQM^wBM@%&(IVXSK=ia2W#L< z#{--xX;914U;W0Z4q7JU81Ooz!I+)P)zFEON%co&IJl;F`9A38PTWK+&O%iUS%@qm zOJ?PrLE6$M@9ey$tpk(}>EW%sipNbk;=QWsQUCI80`)G}z4(Nr049x$X|4VMzm1CR DzwlOd literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/f5/1658077d85f2264fa179b4d0848268cb3475c3 b/tests/resources/merge-recursive/.gitted/objects/f5/1658077d85f2264fa179b4d0848268cb3475c3 new file mode 100644 index 0000000000000000000000000000000000000000..3b4eb97e97d52f89e379338afcb19b587f261683 GIT binary patch literal 355 zcmV-p0i6DL0Yy@~P6IIzr1n=VeME;qN|lO|h>#E1^X=uVb8N?6C(7S5_64Z?nw`h4 z2OkG|eSdq}9rnAg-N*4jhtK2w*_dx$gr-U~E<2*bJ(fL(So$ovP zbpzo`bt+Wiq?-l`CRN`ppK;8wo|>)VJ)Dn`~DdUk$!q?LT_zo4cU^8<7L&-Q!` BuvGv6 literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/fa/567f568ed72157c0c617438d077695b99d9aac b/tests/resources/merge-recursive/.gitted/objects/fa/567f568ed72157c0c617438d077695b99d9aac new file mode 100644 index 0000000000000000000000000000000000000000..ad5a3cf4f2289302c712888568f61f6afd43fa1a GIT binary patch literal 662 zcmV;H0%`qt0Zo*_a?~&oL^*we5nZCWAp06)- zd7!t`_555>9uhOf;9?MJmP|5P?<=gZkvYcDEuLaWwYSYkGtV<8n&T2$ZY#2(rMyPn zAlB!KR+oo;CGDe)c-OG#4$n5wV5cMg%H%TD(Rq^0wsn3hr-ryBIg*TS!UhwY#tM`{ z(WX*4&4&H{>c`a{~xQW$~5C+=s6uJ+Yv@_9CPTODhS$rluKjRmG6CG zD@?9~#mxvN`IeFsh76r!sdv7B>0@lE!FG(9+^?Mg#HoO6YtQcsMgd0yrJaXG=uI01 zfKgusA~bF6#{x=^a^DNpY%@HstcgfY7H;$4#NeX5B#6|30E2cRj(5<&8}1ME5EF8128%w>78jcAR{CVAjlaP;xtXDO zvN?)zp`y+uL6UY<@3(4z8JZHLQkG~O(16Rp6UdY_sN?moe;3REFDr6Pcpchc?A^-M z@QIRX^=D=fJkXndpKN;*?gR%nm1?F%h3qCvX62p1+TN!a{C1#Iz$lyYovpr#`%R1B wy_))7|MG4UjbUj<<%Fa#OdBZ~|2wWInJ!uw>4&_5L|{tXfY8DG0Xe~qQL@xg)c^nh literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/fd/8b5fe88cda995e70a22ed98701e65b843e05ec b/tests/resources/merge-recursive/.gitted/objects/fd/8b5fe88cda995e70a22ed98701e65b843e05ec new file mode 100644 index 0000000000000000000000000000000000000000..b6f14634e403147301851fbcdffc67b275b3bd7c GIT binary patch literal 165 zcmV;W09yZe0i}=44FVw$g*{UR4QPNJU`UMdvK`m}FhkbEieWLv?nPq<-ri60<-J_j z_1dKYx9g2r!eqgK56G5vGMWf1BI#^`P7ye1A0kdD?y>Q$OP_rzXgPQ+nlxr*ohx1$ zGC6tgTnZTpiinTC)Fx+o#zyk8)OD*jdE}9P)S17<&mD4IPf`O|3+N`4dj(2~k&dyQ T|HO!y#^w6j21&dDYs63!76MG; literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/objects/fe/f01f3104c8047d05e8572e521c454f8fd4b8db b/tests/resources/merge-recursive/.gitted/objects/fe/f01f3104c8047d05e8572e521c454f8fd4b8db new file mode 100644 index 0000000000000000000000000000000000000000..715b6a8657cb82115e844624d7b8153d1d17b9f3 GIT binary patch literal 207 zcmV;=05Jb}0V^p=O;s>5GG{O}FfcPQQAjKnBG<2*eK(fL(So$ovP zbpzpRbt+Wiq?-l`CRN`pUvSK^o|~=WB!phksfhaE=JlVLJ)Dn`~DdU1Yvrj>l_zo4eA`2mp_&;vFX BuR#C+ literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/refs/heads/branchA-1 b/tests/resources/merge-recursive/.gitted/refs/heads/branchA-1 new file mode 100644 index 0000000000000000000000000000000000000000..b55325c3efd276f01c0c53e28b713337e5139d9c GIT binary patch literal 41 ucmV~$$q@h`2n4Xd)$F2xl*2LhUxJD5r~%pMinJPnv0#=^HbNKq*5(-WL literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/refs/heads/branchA-2 b/tests/resources/merge-recursive/.gitted/refs/heads/branchA-2 new file mode 100644 index 0000000000000000000000000000000000000000..d35574340651df1d5d1ea6c08a9bab1a72292b8b GIT binary patch literal 41 vcmV~$NdW*L2n4{tX%JbCI3U0+|D2m`>sX~YR)oFULZf_KC&rC1juaso;N$P8a{-fd)1J;w+AL<`se literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/.gitted/refs/heads/branchB-2 b/tests/resources/merge-recursive/.gitted/refs/heads/branchB-2 new file mode 100644 index 0000000000000000000000000000000000000000..d5cfb2762cabe96e94c4ed71118badde1c95a0cd GIT binary patch literal 41 ucmV~$!4Uu;2m`Rc(@^0k>(m4GAHjszQCPffw+Sj6?WyQujAJMh6z2ow%L?fL literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/asparagus.txt b/tests/resources/merge-recursive/asparagus.txt new file mode 100644 index 0000000000000000000000000000000000000000..f51658077d85f2264fa179b4d0848268cb3475c3 GIT binary patch literal 587 zcmYLHOLD^?4Bc}Ib)V@4vdXH z(wKnfFoN&ZZdN?glT|W`=9oIFDEp;!SOQUp#n4tWxh(W_IulcJVx?Ib*v0_b-DC_7 z=w_j&O)N=Dk~?8xuSdhqW+1L1phDpca6hXx8JRo^YI zIObSy%~o;pkWIH}X5<5O%ZU8w(t)0{voo!=C=Ei$Xb@p(t!U5`_1G?P?s#xo6fE)| zs&}AaTSL(T^EZv1d*%_;sPOEt!$^8EjHm`AYdS^n2nXnZvmQg`ET+_Ha@I*u|DqA& fYe6^dt~q&p29Q<7$a+Ip=a)UL*~#u literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/beef.txt b/tests/resources/merge-recursive/beef.txt new file mode 100644 index 0000000000000000000000000000000000000000..68f6182f4c85d39e1309d97c7e456156dc9c0096 GIT binary patch literal 1372 zcmZux!LHLV5WM><_QoZzAHcgIJq}zz;vvqPWRqBRY~ytr%GWb%_X#1mv~p|j&dkp2 zhnJU+^!4+%FBj)t`6^U5q0Psc6rYq98by|YrlaDp5QosNEJ1W@zu1Ey>(iK`4DQ_g zw9$TO#Y3v77>Q55lf>$ag!@3LvQ56;4E?j8}!gvla0Tp~D zAY#g?4y3vGcnw17CdK|jchVj3T;(yyljfA-as;E0(-CKxX$(AFDND{$hE}(p$u1~| z`i#CsP%!!w)fp}IziGJHgi^kSG_P-&|)#-4{#a9+Mv5=BW7oFw!-%v zP$4Y@)F4(D2X= zg^*60(ateSc~6kQ@tbM>v2%o19!2z6+2F!KNQy7;j$V-|v4~(+zPe^7G(q|v#sCK( zsTMta?-IbWg)F7367qDXnag$Pc5KB_harv)!Y10Mfq=jp7y<=fEB-=cp|;=QWJTJM z(A7G;?F_gs$i;oFg&T9PorPVq{yXA?>!+Z>>1$gA5BqgXp zl)d2F@V1SDzL*9U(1EDO<{xn7xx>#=;i4E literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/bouilli.txt b/tests/resources/merge-recursive/bouilli.txt new file mode 100644 index 0000000000000000000000000000000000000000..4b7c5650008b2e747fe1809eeb5a1dde0e80850a GIT binary patch literal 1092 zcmYk5U5?u@420ix3Le0l19abt0__3|v_N;!XW6E0!HVcgR9xS_Lpl2c1OcK@!*7Pv z@1L)~=+D#35BmD^_38Qf>EhgrUzv1aN@3ulwE3(gQ#;Zn3@i0Hl$G0I&pdVHd#Oqs z<^|WFC}9nj|-QLEB74>h?%i!wBm5pC2?H z5NajGUzv7)bR-F<_b!siCt9T1ZAqLv6nmvZDufQV_!~S0Tm{XR8J0K!ahVf?yz%*q@#zm^@){YAh@B235V# zd(vfvJDJXmPw|r&y$+76#Secx&$M%lu4k{DIs}NGG~t)!1`V_@hTWH?QK@Wp7ct~J zblGx9Yh*HbhkElfd{qu1EIC5uWy8Yvvy*o*9A$W-Ljl-{*^E!`a&in=ugH z4yQ{kUmhM>rk+ZjrZ5CfN`I?Q8uV!X-lk-HH=bF2ANhUYAt4d$!Z;eEg^9VN;Gt~T zs;NfP$k>b>*_2nZdFFDS~^jr)hcPt3-R{ e9o9Bu**`CHo3z$;vxxw{7`=)w_G;UjT-<*kZ-7$( literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/gravy.txt b/tests/resources/merge-recursive/gravy.txt new file mode 100644 index 0000000000000000000000000000000000000000..c4e6cca3ec6ae0148ed231f97257df8c311e015f GIT binary patch literal 390 zcmX9)L2kn^47>Xkd_da|?6gyl8&+(Y(Y^3lH<7BTm(g|Y>S3~CB2#zXb19%0K_TVJNQEB$B$#iH-*~-C_yiai$1`1g+}r15kD{bR+?Mf56N8>)Vgt z@cQ!S*V(zhz9sNwf~k5cAREI+_f;Bj1m2rqZ6{c}fFxXi3v47w9~JSt(`{ZGPxo&w z#HB$IYY&%2ZiE-Ps!(a zf+j<+HKfXYRuj+&Z+LPQrB}6*5Hfvqnt+P%c&{vn8MUfdhXHdMD{2m3evRBc$Q5V@ zUlCf5kpf|nyu+mPr;(f_3RgS`8~61{C~~i^t*lAJo(D(PuOo_CO^pC5g#@9ZMPS}d z^p5#DijDq3!Odl_9&nx;Tu^h?6=2Ta33-UP!9t~rrs|_^V&L3$QJI07tW_mdrYW;}#xl-A QH$PDeJZzXqThZBl0*7D{sQ>@~ literal 0 HcmV?d00001 diff --git a/tests/resources/merge-recursive/veal.txt b/tests/resources/merge-recursive/veal.txt new file mode 100644 index 0000000000000000000000000000000000000000..94d2c01087f48213bd157222d54edfefd77c9bba GIT binary patch literal 1095 zcmYjQ%dXTg4Bh7|%)ZPI%<3*cLPFw72w1zV+eS^3-Z-I@uje?O0hUeUz8k@@0@$Bg?ucDnD$htELnu!D(9kJgY*Be#;T#Ykm4-)Muk_QgmK`| zKUN@g>1a#SG`0V87FHoYLE`BYNMWSxRY1dVm}VcEF>^{I4Y&@N&HuU_068O2xDWEa z*{JZ*f$0<=5q$GW5yqIVW+FJ964qvvjmkVL^@5Nh9b$=S$qcn+@#?Us)C@8<%i~Cz zHlbljh-ajovj#cumQ%idX{tLirT(N*AWpP%T70$`E_g#~_i@r{V>Y2U9StcKAFGcu zp-pY7;w0GY!s;wWY;8Swqz)%yEr=Zhm+uc>GaooW=9ZdmFr7F0G&%cdHbON;6c$CB zWGHBc9wOlJ^r>0%Ry{zX9IY4T%CJfVM|W5-L(OAAe&!d_hWZT{TYMH literal 0 HcmV?d00001