# Using git-svn with svnsync mirror

3 messages from 2010-11-16 to 2010-11-16. Participants: Phillip Hutchings, Tim Stoakes.
Thread: https://gitlist.dev/t/25756

## Phillip Hutchings, 2010-11-16 02:08

Subject: Using git-svn with svnsync mirror
Message-ID: <loom.20101116T030410-656@post.gmane.org>
URL: https://gitlist.dev/e/loom.20101116T030410-656%40post.gmane.org

```
Hi,

I've got an svnsync mirror of a large repository, and I'm trying to do
a git-svn clone from the mirror as the main server is off site. This
works well until I try to dcommit or use git svn info.

My investigations show that working_head_info in git-svn doesn't
account for using svnsync properties, so it cannot find a log entry
that matches a config entry.

My perl isn't good enough to patch this yet, so I was wondering if
anyone else had encountered it.

I could change the config URL to match, but I'm worried this will
break things.

```

## Tim Stoakes, 2010-11-16 04:23

Subject: Re: Using git-svn with svnsync mirror
Message-ID: <20101116042312.GB24344@mail.stoakes.net>
URL: https://gitlist.dev/e/20101116042312.GB24344%40mail.stoakes.net
In-Reply-To: <loom.20101116T030410-656@post.gmane.org>

```
Phillip Hutchings(sitharus@sitharus.com)@161110-02:08:
> Hi,
> 
> I've got an svnsync mirror of a large repository, and I'm trying to do
> a git-svn clone from the mirror as the main server is off site. This
> works well until I try to dcommit or use git svn info.
> 
> My investigations show that working_head_info in git-svn doesn't
> account for using svnsync properties, so it cannot find a log entry
> that matches a config entry.
> 
> My perl isn't good enough to patch this yet, so I was wondering if
> anyone else had encountered it.
> 
> I could change the config URL to match, but I'm worried this will
> break things.

You want to use rewriteRoot option so that changing the URL does not
break things (the URL is stored in each git commit's log).

I use something like this all the time:
[svn-remote "svn"]
  rewriteRoot = svn://svn.foo.com/repo/blah   <-- the master
  url = svn://svn-mirror.foo.com/repo/somewhere/else/blah  <-- a slave

If you've imported from the mirror without this option, then you're
stuck I think. You could work around it by swapping the URLs in the
rewriteRoot and url fields (essentially rewriting the URLs in the wrong
order), but this is strictly 'wrong'.

Tim

-- 
Tim Stoakes

```

## Phillip Hutchings, 2010-11-16 07:31

Subject: Re: Using git-svn with svnsync mirror
Message-ID: <AC576A1A-98E4-4710-91B8-7777DBC65B9B@sitharus.com>
URL: https://gitlist.dev/e/AC576A1A-98E4-4710-91B8-7777DBC65B9B%40sitharus.com
In-Reply-To: <20101116042312.GB24344@mail.stoakes.net>

```

On 16/11/2010, at 5:23 PM, Tim Stoakes wrote:

> Phillip Hutchings(sitharus@sitharus.com)@161110-02:08:
>> Hi,
>> 
>> I've got an svnsync mirror of a large repository, and I'm trying to do
>> a git-svn clone from the mirror as the main server is off site. This
>> works well until I try to dcommit or use git svn info.
>> 
>> My investigations show that working_head_info in git-svn doesn't
>> account for using svnsync properties, so it cannot find a log entry
>> that matches a config entry.
>> 
>> My perl isn't good enough to patch this yet, so I was wondering if
>> anyone else had encountered it.
>> 
>> I could change the config URL to match, but I'm worried this will
>> break things.
> 
> You want to use rewriteRoot option so that changing the URL does not
> break things (the URL is stored in each git commit's log).
> 
> I use something like this all the time:
> [svn-remote "svn"]
>  rewriteRoot = svn://svn.foo.com/repo/blah   <-- the master
>  url = svn://svn-mirror.foo.com/repo/somewhere/else/blah  <-- a slave
> 
> If you've imported from the mirror without this option, then you're
> stuck I think. You could work around it by swapping the URLs in the
> rewriteRoot and url fields (essentially rewriting the URLs in the wrong
> order), but this is strictly 'wrong'.


I cloned using --use-svnsync-props, this resulted in the log entries
having the correct url to the master, but git-svn being unable to
link that url back to the config entry.

Guess I'm in for a recloning then.

--
Phillip Hutchings
sitharus@sitharus.com




```
