Subject: Re: git-svn with non-standard repository layout

From: Stephen Bash <[email-masked]>
Date: Wed, 5 Dec 2012 18:54:44 -0500 (EST)

----- Original Message -----
> From: "Piotr Krukowiecki" <[email-masked]>
> Sent: Wednesday, December 5, 2012 5:19:44 PM
> Subject: Re: git-svn with non-standard repository layout
> 
> Do you mean something like
> 
>    branches = branches/work/*/*:refs/remotes/work/*
>    branches = branches/{branch1,branch2}:refs/remotes/branches/*
> 
> instead of (currently used)
> 
>    branches = branches/work/*/*:refs/remotes/work/*
>    fetch = branches/branch1:refs/remotes/branches/branch1
>    fetch = branches/branch2:refs/remotes/branches/branch2

Essentially yes.  But I guess since you have branches at the same level as the work directory, you either have to add to the glob for each new branch or add another fetch line...  Doesn't seem like a big win to me.  Jumping on a tangent, I thought there could only be one wildcard on the left side of the ':' (and the '*' on the right).  If your work/*/* is actually working, that's quite interesting.
 
> BTW what's the difference between "fetch" and "branches" keys? I could
> only find one: "fetch" does not support glob arguments and "branches"
> do.

That's the only difference I've discovered, though someone more familiar with the code might be able to say more.

Here's my config for the Slimdevices repo I mentioned:

[svn-remote "svn"]
	url = http://svn.slimdevices.com/repos/slim

	fetch = trunk/server:refs/remotes/trunk
	fetch = 7.5/trunk/server:refs/remotes/7.5/trunk
	fetch = 7.6/trunk/server:refs/remotes/7.6/trunk
	fetch = 7.7/trunk/server:refs/remotes/7.7/trunk
	fetch = 7.8/trunk/server:refs/remotes/7.8/trunk

	branches = branches/*/server:refs/remotes/pre7/*
	branches = 7.5/branches/*/server:refs/remotes/7.5/*
	branches = 7.6/branches/*/server:refs/remotes/7.6/*
	branches = 7.7/branches/*/server:refs/remotes/7.7/*
	branches = 7.8/branches/*/server:refs/remotes/7.8/*

	tags = 7.5/tags/*/server:refs/remotes/7.5/tags/*
	tags = 7.6/tags/*/server:refs/remotes/7.6/tags/*
	tags = 7.7/tags/*/server:refs/remotes/7.7/tags/*
	tags = 7.8/tags/*/server:refs/remotes/7.8/tags/*

Lots of repetition, but now that I look at it this repo doesn't have the branches/work clash yours does, which simplifies the config.

HTH,
Stephen