Merge two completely separate commit histories
Right now, to merge, the two branches must share a common commit ancestor. This is not strictly necessary as you can materialize an artificial ancestor before both init commits and run the merge as normal. This comes up every so often in customer discussions. Cataloguing as an issue.
In Git this must be enabled by a flag:
--allow-unrelated-histories
By default, git merge command refuses to merge histories that do not share a common ancestor. This option can be used to override this safety when merging histories of two projects that started their lives independently. As that is a very rare occasion, no configuration variable to enable this by default exists and will not be added.
https://www.git-scm.com/docs/git-merge/2.18.0#:~:text=By%20default%2C%20git%20merge%20command,that%20started%20their%20lives%20independently.
Which I think is a reasonable approach for Dolt.
At the same time we do this we may also want to implement dolt branch --orphan/dolt checkout -b --orphan.
https://git-scm.com/docs/git-checkout/2.14.6#Documentation/git-checkout.txt---orphanltnewbranchgt