Скажем, у меня есть ветвь с именем master и ветвь с именем upstream_lib.
В ветки master имеется подкаталог lib, основанный на коде, который находится на ветке upstream_lib; изменения в upstream_lib периодически объединяются (с стратегией поддерева) в ветвь master. Каталог lib в master имеет свои собственные модификации, которые не находятся в upstream_lib.
Однако скажем, что две ветки либо не имеют общей истории (поскольку репозиторий был просто перенесен на git, например), либо база слияния некорректна, потому что слияния в upstream_lib были сжаты, какой-то перегиб или что-то еще.
Вопрос: задан новый набор изменений на upstream_lib, как заставить слияние рассматривать в качестве общего предка конкретную ревизию upstream_lib?