> Well, it really depends on what you are wanting to *do* with the RA
> bindings. Obviously, if you use the svn_client bindings, then you're
> going to be limited to the types of operations exposed by that API.
> If you give me an example of what you're trying to do, I might be of
> more assistance.
OK, well first let me say that I haven't dabbled with the SVN API much
yet. Just some simple things. This is going to be a learning
experience for me, and I'm using Python.
What I'm trying to do is write "svnmirror". The idea is to give it
two repository URLs -- a source and a destination. One or both of
these could be remote. When run, it will issue appropriate commands
to the destination repository to make it a mirror image of the
source. No working copy should be involved at any point, which
appears to completely rule out svn_client (or almost).
You might wonder "what's the use when we have svnadmin dump?" Well,
there are several uses. One is that it's hard to do svnadmin dump in
a reliable way without doing this anyway. You could set up a cron job
to issue a dump each day and e-mail it, but you then have to deal with
dropped e-mails, remembering the last rev covered, etc. svnadmin dump
also does not work on anything but a repository that one has direct
local access too. I have a need to take a complete backup of a remote
repository *, and this seems like a good way. Plus it's a good way for
me to learn about the Subversion API.
As far as algorithm goes, my idea is to connect to each repository and
get the latest revision number. Any revision that's not yet in the
destination repository gets copied over, hopefully with per-revision
properties (like svn:date) intact. I'm not planning any kind of
bidirectional sync, since I think that's not at all appropriate.
* Ok, so svnadmin dump could work for me since I do have a shell over
there, but it's not nearly as exciting :-)
To unsubscribe, e-mail: email@example.com
For additional commands, e-mail: firstname.lastname@example.org
Received on Fri May 2 16:04:18 2003