Zachowanie historii kopiowania svn podczas konwersji na git
Próbuję przekonwertować repozytorium SVN na wielokrotne repozytoria git. Do tej pory używałemgit svn clone svn_repo_project_path
dla każdego projektu w SVN. Zauważyłem, że git nie wydaje się podążać za operacjami kopiowania svn, więc wynikowa historia jest znacznie krótsza niż się spodziewam. Załóżmy, że moje repozytorium SVN wyglądało tak:
korzeń
abcrodzic-projbcProjektowanieb
ic
zostały niedawno skopiowane podparent-proj
w ramach działań restrukturyzacyjnych z zamiarem ostatecznego usunięcia ich ze starych lokalizacji w katalogu głównym. Kiedy robięgit svn clone http://svnhost/parent-proj
w wyniku repo git brakuje całej historii, z której pochodzi/b
i/c
przed ruchem.
Czy jest to ograniczenie git-svn, czy jest jakiś sposób, aby ta historia pojawiła się w moim repozytorium? Z moich ograniczonych badań wynika, że używaniefilter-branch
polecenie jak opisano wUzyskanie pełnej historii repozytorium SVN, którego nazwa została zmieniona przy użyciu git-svn może działać, chociaż w moim przypadku jest wielu rodziców, co prawdopodobnie komplikuje sprawy. Czy klonowanie całego repo jako pierwszego, a następnie dzielenie się od niego nowymi repozycjami (przy użyciu filtru filtru?) Byłoby lepszym podejściem?