diff --git a/.hooks/pre-commit b/.hooks/pre-commit deleted file mode 100755 index 57648d1..0000000 --- a/.hooks/pre-commit +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/sh -# -# An example hook script to verify what is about to be committed. -# Called by "git commit" with no arguments. The hook should -# exit with non-zero status after issuing an appropriate message if -# it wants to stop the commit. -# -# To enable this hook, rename this file to "pre-commit". - -if git rev-parse --verify HEAD >/dev/null 2>&1 -then - against=HEAD -else - # Initial commit: diff against an empty tree object - against=$(git hash-object -t tree /dev/null) -fi - - -# If you want to allow non-ASCII filenames set this variable to true. -allownonascii=$(git config --bool hooks.allownonascii) - -# Redirect output to stderr. -exec 1>&2 - -# PHP CS Fix. -php-cs-fixer fix - -# Cross platform projects tend to avoid non-ASCII filenames; prevent -# them from being added to the repository. We exploit the fact that the -# printable range starts at the space character and ends with tilde. -if [ "$allownonascii" != "true" ] && - # Note that the use of brackets around a tr range is ok here, (it's - # even required, for portability to Solaris 10's /usr/bin/tr), since - # the square bracket bytes happen to fall in the designated range. - test $(git diff --cached --name-only --diff-filter=A -z $against | - LC_ALL=C tr -d '[ -~]\0' | wc -c) != 0 -then - cat <<\EOF -Error: Attempt to add a non-ASCII file name. - -This can cause problems if you want to work with people on other platforms. - -To be portable it is advisable to rename the file. - -If you know what you are doing you can disable this check using: - - git config hooks.allownonascii true -EOF - exit 1 -fi - diff --git a/Makefile b/Makefile deleted file mode 100644 index 33ca565..0000000 --- a/Makefile +++ /dev/null @@ -1,2 +0,0 @@ -install-hooks: - cp -v .hooks/* .git/hooks/ diff --git a/composer.json b/composer.json index 05cbca3..2471099 100644 --- a/composer.json +++ b/composer.json @@ -66,6 +66,7 @@ "twig/intl-extra": "^3.0" }, "require-dev": { + "brainmaestro/composer-git-hooks": "^2.8", "brianium/paratest": "^4.1", "clue/commander": "^v1.3.0", "jc21/clitable": "^1.2", @@ -93,5 +94,22 @@ "bin/queue-status", "bin/queue-view-item", "bin/worker" - ] + ], + "extra": { + "hooks": { + "pre-commit": [ + "echo committing as $(git config user.name)", + "vendor/bin/php-cs-fixer fix ." + ], + "pre-push": [ + "vendor/bin/php-cs-fixer fix .", + "make test" + ], + "post-merge": "composer install --ignore-platform-reqs" + } + }, + "scripts": { + "post-install-cmd": "cghooks add --ignore-lock", + "post-update-cmd": "cghooks update" + } }