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

Re: RE : How to modify a meta-data in pre-commit hook

From: Ryan Schmidt <subversion-2006c_at_ryandesign.com>
Date: 2006-07-07 15:55:49 CEST

On Jul 7, 2006, at 15:23, MALCOR, Claire wrote:

>> What meta-data are you trying to modify? Are you talking about
>> revision properties, like svn:author, svn:date, svn:log, etc.? If so,
>> that's fine, but you must not attempt to modify file contents or
>> versioned properties like svn:eol-style or svn:mime-type because the
>> working copy would then be out of sync with the repository and the wc
>> would most likely break in mysterious ways.
>
>> What does it mean when you say the committed file is locked by the
>> commit action? Where is it locked? Are you talking about a Subversion
>> lock, or something else?
>
>
> I have set a property named 'FM' on all my directories and files,
> with the command "svn propset 'FM' 'blabla' files". And it is this
> property that I wish to modify in the pre-commit hook.
> When I try to do it, I have always the error : "The working copy is
> locked"

Ok. Don't do that. :-) If they're properties on files (which are
versioned, as opposed to properties on revisions, which are not),
then you should not be touching them in your pre-commit hook. I don't
know why you would be getting a message that the working copy is
locked, but I'm also disinclined to investigate further, since what
you're trying to do is not recommended and will land you in trouble
later. Please see the warning at the end of this page of the book:

http://svnbook.red-bean.com/en/1.2/
svn.reposadmin.create.html#svn.reposadmin.create.hooks

> Do not attempt to modify the transaction using hook scripts. A
> common example of this would be to automatically set properties
> such as svn:eol-style or svn:mime-type during the commit. While
> this might seem like a good idea, it causes problems. The main
> problem is that the client does not know about the change made by
> the hook script, and there is no way to inform the client that it
> is out-of-date. This inconsistency can lead to surprising and
> unexpected behavior.
>
> Instead of attempting to modify the transaction, it is much better
> to check the transaction in the pre-commit hook and reject the
> commit if it does not meet the desired requirements.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Fri Jul 7 15:57:37 2006

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