Graeme,
>
> Quoting "Thompson, Graeme (AELE)"
> <Graeme.Thompson@smiths-aerospace.com>:
>
> >
> > I have just tried this with a subversion 1.2.3 server on
> SUSE 10 and a
> > TortoiseSVN 1.2.6 client.
> >
> > It does not *Require* you to have a lock in order to commit a file
> > with the svn:needs-lock property. You can simply make the file
> > writable and then do a commit and it will happily go ahead
> and update the repository.
> >
> > Is there any way to get this to be a requirement, e.g. through a
> > pre-commit hook similar to the suggested one to ensure that
> all files
> > have the svn:needs-lock property set?
> >
> > If so then has anyone got any examples of how to do this?
>
> This would be easy to build using "svnlook propget".
> If no one has an example file available I'll create one this evening.
this simple pre-commit script checks if all files in a transaction were
locked
in the repository. It doesn't check if that was your lock ( commit will fail
anyway ), nor does it filter on extensions ( not that difficult to add ).
You might clean it up a bit.
--------------
#!/bin/bash
isFileLocked()
{
COMMITFILES=`svnlook changed -t $TXN $REPOS`
#save the current IFS
OLDIFS=$IFS
IFS=$'\n'
# iterate over all files in the transaction
for line in $COMMITFILES; do
line=`echo $line | cut -c 5-`
LOCKSET=`svnlook lock $REPOS "/$line" | grep "UUID Token" | wc
-c`
if [ $LOCKSET = 0 ]; then
#reset the old IFS
IFS=$OLDIFS
REPLY=$line
return 1
fi
done
#return the old IFS
IFS=$OLDIFS
REPLY=""
return 0
}
REPOS="$1"
TXN="$2"
isFileLocked
if [ $? = 1 ]; then
echo "Failed commit because file '$REPLY' wasn't locked before
commit!" >&2
exit 1
fi
# All checks passed, so allow the commit.
exit 0
-----------------
Hope this helps.
regards,
Lieven.
--
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.1.371 / Virus Database: 267.13.13/197 - Release Date: 9/12/2005
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Mon Dec 12 19:46:40 2005