Se você criar um repositório novo e vazio do SVN, você pode enviar todos os commits do git-svn diretamente para o repo? (não usei git ou git-svn, mas isso é o que eu faria com um dos meus hg repos se eu precisasse colocá-lo em um repositório svn)
Editar: Eu consegui fazer isso funcionar com o rebasing manual via mercurial. A única coisa que parece especial é o rebase manual em vez do rebase automático do svn. Você pode tentar isso no git-svn antes de puxar o mercurial para o mix.
- Crie um novo SVN Repo:
svnadmin create targetSVN - Confirmar inicialmente no novo repositório do SVN:
svn co file://targetSVN svnCopycd svnCopytouch testsvn add test; svn commit -m "Initial Import" - Verifique o repo por meio de
hg:hg clone file://targetSVN hgCopy; cd hgCopy - Puxe as alterações do git (via
hg-git):hg pull git://yourrepo.git - Rebase manual:
hg rebase -s tip -d 0(0deve ser o commit inicial do SVN, etipdeve ser o chefe do material que você extraiu do git. Certifique-se de que os changesets do git sejam lineares (não tenham mesclagens!). Substituatippelo número atual do changeset da cabeça do git (encontrado viahg heads) se necessário). Aceite todas as alterações remotas quando perguntar sobre conflitos. -
hg pushaté que todas as alterações estejam no svn repo. Empurra 1 changeset de cada vez.