# git-svn and complex branch/tag layout

3 messages from 2008-09-05 to 2008-09-07. Participants: Andriy Gapon, Eric Wong, Marcus Griep.
Thread: https://gitlist.dev/t/15383

## Andriy Gapon, 2008-09-05 13:53

Subject: git-svn and complex branch/tag layout
Message-ID: <48C139EB.1000104@icyb.net.ua>
URL: https://gitlist.dev/e/48C139EB.1000104%40icyb.net.ua

```

I am trying to use 'git svn' with FreeBSD base repository (which is now
in svn).
As can be seen here in "RELENG_* branches and general layout" section:
http://wiki.freebsd.org/SubversionPrimer

There are several subdirectories for branches and tags depending on the
status of a branch/tag in question. As I understand those subdirectories
do not introduce separate namespaces, i.e. a particular tag/branch name
is supposed to be unique across all subdirectories.

Does git-svn support repository layouts with multiple branch/tag
subdirectories? Or does it only support "standard layout" variations
that still have only one subdirectory for each?

Thank you in advance for any help/advice!

-- 
Andriy Gapon

```

## Eric Wong, 2008-09-07 02:56

Subject: Re: git-svn and complex branch/tag layout
Message-ID: <20080907025626.GB12392@untitled>
URL: https://gitlist.dev/e/20080907025626.GB12392%40untitled
In-Reply-To: <48C139EB.1000104@icyb.net.ua>

```
Andriy Gapon <avg@icyb.net.ua> wrote:
> 
> I am trying to use 'git svn' with FreeBSD base repository (which is now
> in svn).
> As can be seen here in "RELENG_* branches and general layout" section:
> http://wiki.freebsd.org/SubversionPrimer
> 
> There are several subdirectories for branches and tags depending on the
> status of a branch/tag in question. As I understand those subdirectories
> do not introduce separate namespaces, i.e. a particular tag/branch name
> is supposed to be unique across all subdirectories.
> 
> Does git-svn support repository layouts with multiple branch/tag
> subdirectories? Or does it only support "standard layout" variations
> that still have only one subdirectory for each?
> 
> Thank you in advance for any help/advice!

Hi Andriy,

For tracking /etc, this seems to work:

  git svn clone -b 'releng/*/etc' -t 'release/*/etc' svn://svn.freebsd.org/base
  (it started, I don't have the time/space/bandwidth to let it finish).

Unfortunately only releng and release, you can get other namespaces like
stable.


Double-globbing should work, (I thought Marcus got it to work a few
months ago), but doesn't seem to at the moment:

  git svn clone -b '*/*/etc'

Marcus?


The long way:

If you explicitly specify every branch you want, it'll definitely, too.
It's just a huge pain to setup since you'll lose all the advantages of
globbing, so it could end up being a very big .git/config file:

[svn-remote "svn"]
        url = svn://svn.freebsd.org/base
	fetch = releng/4.3/etc:refs/remotes/releng/4.3/etc
	fetch = release/4.3.0/etc:refs/remotes/release/4.3.0/etc
	fetch = stable/4/etc:refs/remotes/stable/4/etc
	; ...

-- 
Eric Wong

```

## Marcus Griep, 2008-09-07 16:45

Subject: Re: git-svn and complex branch/tag layout
Message-ID: <48C4053B.60704@griep.us>
URL: https://gitlist.dev/e/48C4053B.60704%40griep.us
In-Reply-To: <20080907025626.GB12392@untitled>

```
Eric Wong wrote:
> Double-globbing should work, (I thought Marcus got it to work a few
> months ago), but doesn't seem to at the moment:
> 
>   git svn clone -b '*/*/etc'
> 
> Marcus?

I'm not sure about starting with multi-globs, but I've been using the 'branches/*/*' form
for a while now at work.  I can try to look into the '*/*' and '*/*/blah' forms this week.

-- 
Marcus Griep
GPG Key ID: 0x5E968152
——
http://www.boohaunt.net
את.ψο´


```
