Git octopus объединяет несвязанные репозитории

У меня есть куча git-репозиториев, каждый из которых содержит один файл. Я хотел бы объединить их все вместе, желательно в один шаг. Я стремлюсь к следующему графику:

*----¬ mergedrepo/master
| \ \ \
| | | * repoA/master
| | * repoB/master
| | |
| | * repoB/...
| * repoC/master
* repoD/master
|
* repoD/...

Я попробовал git merge, но оказалось, что стратегия осьминога не работает для непересекающихся деревьев

$ git merge a/master b/master c/master d/master
Unable to find common commit with a/master
Automatic merge failed; fix conflicts and then commit the result.

Мне также сказали, что git merge --squashпоможет, но выдаст ту же ошибку.

Это создает правильный граф, но теряет все файлы:

$ git merge -s ours a/master b/master c/master d/master

Как мне это сделать?

16
задан Eric 29 October 2019 в 08:14
поделиться