diff options
Diffstat (limited to 'hooks/pre-lock.tmpl')
-rw-r--r-- | hooks/pre-lock.tmpl | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/hooks/pre-lock.tmpl b/hooks/pre-lock.tmpl deleted file mode 100644 index 2a4a039fd..000000000 --- a/hooks/pre-lock.tmpl +++ /dev/null @@ -1,71 +0,0 @@ -#!/bin/sh
-
-# PRE-LOCK HOOK
-#
-# The pre-lock hook is invoked before an exclusive lock is
-# created. Subversion runs this hook by invoking a program
-# (script, executable, binary, etc.) named 'pre-lock' (for which
-# this file is a template), with the following ordered arguments:
-#
-# [1] REPOS-PATH (the path to this repository)
-# [2] PATH (the path in the repository about to be locked)
-# [3] USER (the user creating the lock)
-# [4] COMMENT (the comment of the lock)
-# [5] STEAL-LOCK (1 if the user is trying to steal the lock, else 0)
-#
-# If the hook program outputs anything on stdout, the output string will
-# be used as the lock token for this lock operation. If you choose to use
-# this feature, you must guarantee the tokens generated are unique across
-# the repository each time.
-#
-# The default working directory for the invocation is undefined, so
-# the program should set one explicitly if it cares.
-#
-# If the hook program exits with success, the lock is created; but
-# if it exits with failure (non-zero), the lock action is aborted
-# and STDERR is returned to the client.
-
-# On a Unix system, the normal procedure is to have 'pre-lock'
-# invoke other programs to do the real work, though it may do the
-# work itself too.
-#
-# Note that 'pre-lock' must be executable by the user(s) who will
-# invoke it (typically the user httpd runs as), and that user must
-# have filesystem-level permission to access the repository.
-#
-# On a Windows system, you should name the hook program
-# 'pre-lock.bat' or 'pre-lock.exe',
-# but the basic idea is the same.
-#
-# Here is an example hook script, for a Unix /bin/sh interpreter:
-
-REPOS="$1"
-PATH="$2"
-USER="$3"
-
-# If a lock exists and is owned by a different person, don't allow it
-# to be stolen (e.g., with 'svn lock --force ...').
-
-# (Maybe this script could send email to the lock owner?)
-SVNLOOK=/usr/local/bin/svnlook
-GREP=/bin/grep
-SED=/bin/sed
-
-LOCK_OWNER=`$SVNLOOK lock "$REPOS" "$PATH" | \
- $GREP '^Owner: ' | $SED 's/Owner: //'`
-
-# If we get no result from svnlook, there's no lock, allow the lock to
-# happen:
-if [ "$LOCK_OWNER" = "" ]; then
- exit 0
-fi
-
-# If the person locking matches the lock's owner, allow the lock to
-# happen:
-if [ "$LOCK_OWNER" = "$USER" ]; then
- exit 0
-fi
-
-# Otherwise, we've got an owner mismatch, so return failure:
-echo "Error: $PATH already locked by ${LOCK_OWNER}." 1>&2
-exit 1
|