Я просматривал справочную страницу "git merge-base" и не могу понять, как развиваются множественные базы слияния. В частности, я зациклен на следующей иллюстрации на странице руководства:
When the history involves criss-cross merges, there can be more than one best common
ancestor for two commits. For example, with this topology:
---1---o---A
\ /
X
/ \
---2---o---o---B
both 1 and 2 are merge-bases of A and B. Neither one is better than the other (both
are best merge bases). When the --all option is not given, it is unspecified which
best one is output.
Я просто не могу понять, как могла быть создана такая ситуация. Я попытался воссоздать эту ситуацию перекрестного слияния между ветвями, используя тестовый репозиторий, но я не могу ее воспроизвести. Во всех случаях я всегда получаю 1 коммит слияния, на который указывают как A, так и B (вместо A и B, указывающих на независимые коммиты слияния, как показано на диаграмме).
Кто-нибудь может проиллюстрировать, как может возникнуть такая ситуация? Это обычная ситуация или ситуация с ошибкой?