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

Re: Subversion, decentralized version control, and the future.

From: Mark Reibert <svn_at_reibert.com>
Date: 2007-07-09 05:49:47 CEST

On Sat, 2007-07-07 at 16:09 +0200, Folker Schamel wrote:
> > Like you, I admire the simplicity and elegance of a tag/branch being
> > just a copy. On the other hand, the fact that these operations are
> > special only by convention makes administering and controlling them
> > difficult. For example, in days gone by under CVS we allowed anyone to
> > place a "private" tag on objects, whereas only repository admins could
> > create "official" tags (e.g., for a release). Private tags began with
> > "p_<user_initials>". Official tags were automatically inserted into
> > Bugzilla as versions of the associated product.
> >
> > This was extremely easy to setup and enforce with a trigger script under
> > CVS, since tagging is a sentient operation. With Subversion, as far as I
> > can tell this requires a pre-commit hook that inspects the target of the
> > copy and needs to use a set of heuristics to figure out the user's
> > intent. Moreover, it seems the user could easily subvert the attempted
> > control by simply choosing a location or name that is not part of the
> > heuristics.
> >
> > Just my $0.02 worth ...
> What about pre-commit script just like the following pseudo-code?
> if commit_path matches /trunk/.* or commit_path matches /branches/.*:
> return Access_allowed
> if commit_path matches /tags/.*:
> if commit_path matches /tags/official/\w* and user == admin:
> return Access_allowed
> if commit_path matches /tags/private/<user>/\w*:
> return Access_allowed
> return Access_denied

Hello Folker,

This approach works only if all the users behave well; that is, place
their tags in /tags. In my experience this is not always the case. The
less experienced users will start copying files all over in /trunk
because they do not understand the convention, whereas the experienced
users may be inclined to start tagging in /trunk just to side-step the
attempted controls.


Mark S. Reibert, Ph.D.
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Jul 9 05:49:58 2007

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

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