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

Two comments on client-side hooks

From: Garth Snyder <garth_at_grsweb.us>
Date: Fri, 20 Jun 2008 15:29:14 -0700

This feature has been working really well for me. But I notice a couple of
design issues (current as of 13302).

First, execution of the post-update hook occurs as soon as all new content
has been downloaded from the server. In particular, it happens before any
conflict resolution has taken place. On one hand, it seems useful to allow
hooks to participate in conflict resolution. On the other hand, it comes as
something of a surprise; I would have expected the "post-" hook to be run at
the end of the process rather than in the middle.

My application involves translating file formats between a
version-controlled archive format and a derived format for deployment. I
imagine this will be a fairly typical scenario. But given the current hooks,
there's really no way to support this operation properly, since it needs to
see a consistent set of post-integration files.

I suggest adding another update hook. Rename the current post-update hook to
pre-integrate or some variation of that, then redefine the post-update hook
to run when the OK button on the update panel is clicked.

The second issue is that there doesn't seem to be any triggering of hooks
during a reversion or switch. Again, this is problematic because it thwarts
efforts to keep derived data synchronized with version-controlled data. I am
not so sure of the proper approach to this issue, though. In my case,
triggering of the update hooks would solve the problem. But there may be
reasonable scenarios in which the client-side software wants to distinguish
between the various cases.

Garth

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe_at_tortoisesvn.tigris.org
For additional commands, e-mail: dev-help_at_tortoisesvn.tigris.org
Received on 2008-06-21 00:29:34 CEST

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