Если вы единственный человек, который в данный момент использует git-репо, вы можете перебазировать всю вашу работу поверх пустого клона Subversion, который вы создали. Затем настройте ветку, чтобы удерживать ваши толчки обратно в subversion, раздавить каждый релиз на него и передать его обратно в SVN.
Для более глубокого решения рассмотрите возможность использования git commit-tree
напрямую - предоставьте ему дерево, которое вы хотите зафиксировать (найдите, запустив git show --format=raw HEAD
и просмотрев вторую строку ("дерево")), правильное родительский коммит (все, что в данный момент находится в Subversion) и правильное сообщение в журнале на stdin. Это прямое использование сантехники, вы, вероятно, захотите написать скрипт, который сделает это за вас ... В результате вы создали новый коммит, содержащий содержимое файла существующего коммита (сравните с cherry-pick, который требует diff, добавляемый существующим коммитом, а не копирующий дерево).