This text is a work in progress—highly subject to change—and may not accurately describe any released version of the Apache™ Subversion® software. Bookmarking or otherwise referring others to this page is probably not such a smart idea. Please visit http://www.svnbook.com/ for stable versions of this book.
pre-commit — Notification just prior to commit completion.
pre-commit
REPOS-PATH
TXN-NAME
The pre-commit
hook is run just
before a commit transaction is promoted to a new revision.
Typically, this hook is used to protect against commits that
are disallowed due to content or location (e.g., your
site might require that all commits to a certain branch
include a ticket number from the bug tracker, or that the
incoming log message is nonempty).
If the pre-commit
hook program
returns a nonzero exit value, the commit is aborted, the
commit transaction is removed, and anything printed to
stderr
is marshalled back to the client.
The command-line arguments passed to the hook program, in order, are:
Repository path
Commit transaction name
Additionally, Subversion passes any lock tokens provided
by the committing client to the hook script via standard
input. When present, these are formatted as a single line
containing the string LOCK-TOKENS:
,
followed by additional lines—one per lock
token—which contain the lock token information. Each
lock token information line consists of the URI-escaped
repository filesystem path associated with the lock,
followed by the pipe (|
) separator
character, and finally the lock token string.