Guido Ostkamp <git@xxxxxxxxxxxxxxxxxxx> wrote: > Hello, > > I am trying to create a git repo that tracks an SVN repo with multiple > branch directories. > > Is there any way to get this done easily? > > It seems the 'git svn' command allows only to specify one 'trunk', > 'branches' and 'tag' directory. > > The example usecase is the OpenOffice.org repo (it's just a private > experiment). I got this svn-sync'ed within 4 evening sessions, the SVN > size is about ~8 GB with ~270000 commits. Unfortunately their structure > is > > branches/ > contrib/ > cws/ > dist/ > patches/ > tags/ > trunk/ > > where 'cws' and 'branches' both hold branches. > > I have seen a web-based article telling one should > > git svn clone <URL>/trunk repo.git > > first, and then hack the repo.git/.git/config file manually to add > entries like > > [svn-remote "b1"] > url = $SVN_REPO_URL/branches/b1 > fetch = :refs/remotes/b1 > [svn-remote "b2"] > url = $SVN_REPO_URL/branches/b2 > fetch = :refs/remotes/b2 > [svn-remote "c1"] > url = $SVN_REPO_URL/cws/c1 > fetch = :refs/remotes/c1 > ... > > to later use > > git svn fetch <branchname> > > for each branch. But even if that worked, their seems to be no easy way > to detect newly created branches etc. Additionally, I get two entries > listed in 'git branch' for each, one of which with extension '@1' (seems > to point ot the branch point). This doesn't seem to be the case for > repo's with only one branch directory converted the normal way. > > Any ideas? You should be able to do something like this: [svn-remote "svn"] url = $SVN_REPO_URL branches = branches/*:refs/remotes/branches/* tags = tags/*:refs/remotes/tags/* fetch = cws/c1:refs/remotes/cws/c1 fetch = cws/c2:refs/remotes/cws/c2 fetch = cws/c3:refs/remotes/cws/c3 ... As for generating the individual fetch lines, I would just pipe svn ls $SVN_REPO_URL/cws to awk/sed/perl... -- Eric Wong (who just realized he programs in ASP :x) -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html