git фильтр-ветвь частично потерянной истории - PullRequest
0 голосов
/ 20 января 2020

У меня был репо в одной папке, и я разбил его на подмодули некоторое время go.

начальный: (T0)

-mainpackage
\-subpackage1
\-subpackage2

текущий: (T1)

-subpackage1
-subpackage2
-mainpackage

В настоящее время я вижу всю историю git с самого начала. Теперь я хочу переместить этот subpackage1 в другой репо.

, когда я выполняю операцию и фильтрую ветвь с git filter-branch --subdirectory-filter <directory of subpackage1> -- --all Я теряю историю между T0 и T1, которая является большинством коммитов.

, когда я отслеживаю историю с git log --follow --pretty=format:"%H" <filename> Я вижу, что в этом же файле было две версии, самые последние из которых имели путь к файлу (например, «subpackage / src /../ filename») и старые коммиты только с именем файла (например, «имя файла»).

Как можно Я восстанавливаю прошлую историю для всего подмодуля (в лучшем случае) или специфицируемых c файлов (в худшем случае - меня интересует только история 4-5 файлов)

...