Я хочу сделать что-то немного более сложное, чем un-submodule подмодуля git
У меня есть git-репозиторий верхнего уровня, который содержит подмодульные репо.
Я хочу выполнить переписывание истории ветки фильтра в репозитории верхнего уровня и по существу включить файлы из соответствующей версии подмодуля при каждом коммите в историю верхнего уровня .
Это также можно описать как обратную Ретроспективно конвертировать папку git в субмодуль?
Например,
Репозиторий субмодуля имеет историю
A--B--C--D
Топ репо имеет историю
X--Y--Z
where
X[points to A]--Y[points to B]--Z[points to D]
Наивное решение, описанное в другом вопросе, приведет к:
A--B--C--D
\
> M
/
X--Y--Z
Я хотел бы вместо:
X'--Y'--Z'
where:
X' is X plus the files from A
Y' is Y plus the files from B
Z' is Z plus the files from D'
Обращаясь к комментарию от пользователя torek: обратите внимание, что коммит C потерян, а коммит D 'содержит все изменения коммитов C и D. Это не по выбору, а упрощение.Я также был бы также доволен коммитом C '(изменения от C), который просто появляется между Y' и Z ', к сожалению, который вводит другие крайние случаи, которые не стоит решать.
Что я пробовал до сих пор?
Потратил некоторое время, пытаясь сформулировать, что я хочу сделать, и исследуя существующие вопросы SO.
Это проблема XY?
Нет, это не так.Это не часть большой проблемы, которую я на самом деле пытаюсь решить.