diff options
Diffstat (limited to 'third_party/git/templates/hooks--pre-push.sample')
-rwxr-xr-x | third_party/git/templates/hooks--pre-push.sample | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/third_party/git/templates/hooks--pre-push.sample b/third_party/git/templates/hooks--pre-push.sample deleted file mode 100755 index 4ce688d32b75..000000000000 --- a/third_party/git/templates/hooks--pre-push.sample +++ /dev/null @@ -1,53 +0,0 @@ -#!/bin/sh - -# An example hook script to verify what is about to be pushed. Called by "git -# push" after it has checked the remote status, but before anything has been -# pushed. If this script exits with a non-zero status nothing will be pushed. -# -# This hook is called with the following parameters: -# -# $1 -- Name of the remote to which the push is being done -# $2 -- URL to which the push is being done -# -# If pushing without using a named remote those arguments will be equal. -# -# Information about the commits which are being pushed is supplied as lines to -# the standard input in the form: -# -# <local ref> <local oid> <remote ref> <remote oid> -# -# This sample shows how to prevent push of commits where the log message starts -# with "WIP" (work in progress). - -remote="$1" -url="$2" - -zero=$(git hash-object --stdin </dev/null | tr '[0-9a-f]' '0') - -while read local_ref local_oid remote_ref remote_oid -do - if test "$local_oid" = "$zero" - then - # Handle delete - : - else - if test "$remote_oid" = "$zero" - then - # New branch, examine all commits - range="$local_oid" - else - # Update to existing branch, examine new commits - range="$remote_oid..$local_oid" - fi - - # Check for WIP commit - commit=$(git rev-list -n 1 --grep '^WIP' "$range") - if test -n "$commit" - then - echo >&2 "Found WIP commit in $local_ref, not pushing" - exit 1 - fi - fi -done - -exit 0 |