Re: [PATCH v2 12/13] merge-tree: add a --allow-unrelated-histories flag
From: Junio C Hamano <hidden>
Date: 2022-02-02 21:32:59
"Elijah Newren via GitGitGadget" [off-list ref] writes:
quoted hunk ↗ jump to hunk
@@ -430,7 +431,7 @@ static int real_merge(struct merge_tree_options *o, * merge_incore_recursive in merge-ort.h */ common = get_merge_bases(parent1, parent2); - if (!common) + if (!common && !o->allow_unrelated_histories) die(_("refusing to merge unrelated histories")); for (j = common; j; j = j->next) commit_list_insert(j->item, &merge_bases);
Curious. This step _adds_ an "--allow" option from the command line, but we actually did not have to die() when seeing that there is no common ancestor before this step. The end result is OK either way.
quoted hunk ↗ jump to hunk
@@ -494,6 +495,10 @@ int cmd_merge_tree(int argc, const char **argv, const char *prefix) &o.exclude_modes_oids_stages, N_("list conflicted files without modes/oids/stages"), PARSE_OPT_NONEG), + OPT_BOOL_F(0, "allow-unrelated-histories", + &o.allow_unrelated_histories, + N_("allow merging unrelated histories"), + PARSE_OPT_NONEG), OPT_END() };