I am currently doing a git svn clone from an svn repository that has quite a few branches and tags, and it is taking quite long time (2 hours and counting). Is it fetching file contents from all of the branches, or just from the trunk? If the former, is it smart enough to see when the branches were created, thus not grabbing duplicate files?
Share
Git-svn is very slow because it asks the subversion server for every single commit and replays them one by one locally. Thus, the Git repo contains everything when the operation completes (trunk, branches and tags). But it takes a very very long time.
The git-svn command has IMO two major problems :
I advise you to have a look on the SmartGit client (syntevo.com/smartgit), which implements a totally refactored git to svn bridge layer. With it, it takes just a few minutes to get an svn repo cloned and up and ready. The last revision are retrieved first in a few seconds, and after that the rest is fetched in the background, so that you can start to work very quickly.