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

Re: versioning a [small] MySQL database with svn?

From: Dirk Schenkewitz <schenkewitz_at_docomolab-euro.com>
Date: 2005-02-28 12:17:12 CET

> I understand now; as others have pointed out, you're looking for a
> *client* hook feature, rather than a server-hook feature. I believe
> Clearcase has something like this.
>
> To my knowledge, nobody's (yet) voiced much interest in such a feature.
> Maybe that will change someday. In the meantime, yes, you're right --
> you can simply write a script that does the sqldump and then commits the
> working copy.

*raises hand* Here is another voice :-)
I can easily imagine further uses of client-side hooks, e.g. setting
certain properties which might need calling something from the OS to
find out what the value should be.

> But no, it doesn't have client-side scriptability features.

Ben Collins-Sussman wrote:
>
> On Feb 27, 2005, at 12:41 PM, Basile STARYNKEVITCH wrote:
>
>> So I will wrap svn commit inside a shell script, but I still believe
>> it is a pity that *transforming* commands (like mysqldump) cannot be
>> invoked at commit time by the svn commit command.

I wholeheartedle agree.

> I understand now; as others have pointed out, you're looking for a
> *client* hook feature, rather than a server-hook feature. I believe
> Clearcase has something like this.
>
> To my knowledge, nobody's (yet) voiced much interest in such a feature.
> Maybe that will change someday. In the meantime, yes, you're right --
> you can simply write a script that does the sqldump and then commits the
> working copy.

*raises hand* Here is another voice :-)
I can easily imagine further uses of client-side hooks, e.g. setting
certain properties which might need calling something from the OS to
find out what the value should be.

> ...
> But no, it doesn't have client-side scriptability features.

IMHO, that's a real pity. Not only because of "lazyness" but rather
because of *safety* - there might be conditions where you can easily
forget to do a pre-commit operation by hand - you may get a message
from svn and the commit will be rejected, ok, but on one hand, that's
rather annoying, on the other hand, there might perhaps certain
circumstances where SVN (on the server) cannot know if the pre-commit
operation has been done. Then it would be safest if the operation is
done automatically during/prior the real commit - on the client.
Of course, it could be done with a wrapper, but that's not so nice
and less safe.

But I also see the problems - the client-side hooks might not be
OS-independent, in case different developers use different OSes.
Under certain circumstances it might be difficult (or even impossible)
to get the same functionality under all involved OSes. But even knowing
this, as a possibility, I definitely want client-side hooks, also!

@ Basile STARYNKEVITCH:
Most likely you already thought of it, but just in case :-) :
You have a Makefile. How about making a target "commit" or "svn-ci"
or something like that and let it first do the conversion/dump and if
that succeeded, let the commit follow. Then you don't need an extra
wrapper script, you only need to remember to never use 'svn commit'
directly.

just my 0.5 cent :-)

Have fun
   Dirk

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Mon Feb 28 12:18:31 2005

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.