David Kastrup wrote: > Russ Brown <pickscrape@xxxxxxxxx> writes: > >> David Kastrup wrote: >>> Russ Brown <pickscrape@xxxxxxxxx> writes: >>> >>>> I'm having some trouble with using git-svn to fetch a repository, and I >>>> think it's because the repository doesn't store branches as a flat list >>>> directly under the 'branches' directory. >>>> >>>> Basically, we have a structure like this: >>>> >>>> | >>>> +-trunk >>>> +-tags >>>> +-branches >>>> + category-a >>>> + branch-a >>>> + branch-b >>>> + category-b >>>> + branch-c >>>> + branch-d >>>> >>>> etc. category-a and category-b are simple directories created using svn >>>> mkdir. The branches are created using svn cp. >>>> >>>> It helps us to organise the branches better, but the rationale is >>>> besides the point. The problem is that git-svn seems to want to >>>> treat category-a and category-b as branches, which isn't right at >>>> all. As a result, git-svn seems to skip most (if not all) revisions >>>> that occur in these directories and creates a lot of entries in >>>> unhandled.log. >>> So what did you specify in your .git/config file regarding the svn >>> structure? >> I specified the 'branches' directory, but that's because earlier in >> the life of the repo we did just do the flat branch layout, but >> decided to make it more structured once that got unwieldy. > > Cough, cough. _What_ did you specify in your .git/config file > regarding the svn structure? Please quote the section. > Erm, sorry. [svn-remote "svn"] url = svn://svn.<name>.com fetch = trunk:refs/remotes/trunk branches = branches/*:refs/remotes/* tags = tags/*:refs/remotes/tags/* (URL changed in case it annoys my employers) I didn't write this by hand: it was generated by git-svn init. >> Is it possible to specify more than one folder for the branches >> option? > > It is possible to adapt the config section to the actual layout. If > not otherwise, by starting with > git svn init > with a clean slate, editing the config file, and only then actually > fetching stuff. > > However, git-svn will not magically start guessing that you changed > your structure around. You have to edit the configuration > appropriately. > That's why I suggested that a method involving detecting branches based on whether the directory is a copy of trunk or another branch might 'magically' work in all scenarios. I've used a similar branch 'scanning' technique before for a different reason. But I realise there may be technical reasons as to why that might not be possible. -- Russ - 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