[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: keeping 2 repos in sync?

From: Justin Erenkrantz <jerenkrantz_at_apache.org>
Date: 2002-12-03 10:50:43 CET

--On Monday, November 25, 2002 3:20 PM -0500 pll@lanminds.com wrote:

> Hi all,
>
> Is there an easy way to keep to svn repos in sync with each other?

Not currently, but perhaps I can say that there might be help on the
way shortly.

I just spent tonight introducing a replication/mirror system to SVN.
(I've been thinking about this for a while...) One master, many
slaves. Each commit to a slave transparently commits to the master.
After a commit, the master then replicates its changes to each slave
(that part can be done as a post-commit hook).

Given my tendencies, I implemented this entirely with tweaks to
mod_dav_svn and some needed fixes to mod_proxy. The client has no
idea what is going on nor does the master server - it's all
transparent. It's absolutely rough around the edges right now, but
it works as a proof of concept. (I'm shocked actually.)

This, of course, isn't multi-master replication - you can't commit
when your slave can't contact the master. The downward replication
from a master to a slave could be done more elegantly than a
post-commit hook. Yet, that's not what I was going for right now.
Long-term, perhaps... Baby steps.

Of course, SVN has a bunch of off-line operations to ease the need
for distributed repositories, but 'svn log' being an on-line
operation has always bugged me.

Anyway, if there is an interest in this, I can try to package it up.
Perhaps integrate back my changes into mod_dav_svn. And, I've
already sent the required patch for mod_proxy to dev@httpd. -- justin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Dec 3 10:51:38 2002

This is an archived mail posted to the Subversion Dev mailing list.