From 5568b2134bfc8aa477d92e573d8a7d3d13264b44 Mon Sep 17 00:00:00 2001 From: Chris Smith Date: Sat, 3 Apr 2010 01:53:12 +0100 Subject: [PATCH] [git-tools] Display what parse errors were found. --- git-tools/hooks/pre-commit | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/git-tools/hooks/pre-commit b/git-tools/hooks/pre-commit index 929789e312..a7deea43c5 100755 --- a/git-tools/hooks/pre-commit +++ b/git-tools/hooks/pre-commit @@ -24,6 +24,7 @@ else fi error=0 +errors="" IFS=$'\n' # get a list of staged files @@ -52,15 +53,19 @@ do # check the staged file content for syntax errors # using php -l (lint) - git cat-file -p $sha | $PHP_BIN -l >/dev/null + result=$(git cat-file -p $sha | $PHP_BIN -l) if [ $? -ne 0 ] then error=1 + # Swap back in correct filenames + errors+=${result//in - on/"$filename"} fi done unset IFS if [ $error -eq 1 ] then + echo -e "PHP Syntax check failed:"; + echo -e "$errors" | grep "^Parse error:" exit 1 fi