From 8c14d8bae5203c0bc56ef007ec27aceed449cf3c Mon Sep 17 00:00:00 2001 From: noah the goodra Date: Tue, 31 Jan 2017 14:45:16 -0600 Subject: [PATCH] added a special check to the pre-hook to output to file this change adds an if statement to the pre-hook that will either dump the diff into the terminal if its less then or equal to 30 charaters or will write it to a temp file and tell the user where said file is so they can read the fixes. this helps if the user is using something like an ide. examples would include clion,possibly netbeans,and visual studio. The issue is that the prehook output doesnt get dumped into a full terminal (in the case of clion anyway) and ends up being obstructed by the ui of the ide product. --- hooks/pre-commit | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/hooks/pre-commit b/hooks/pre-commit index d3ad0cc0c..0d35ef1b5 100755 --- a/hooks/pre-commit +++ b/hooks/pre-commit @@ -43,8 +43,14 @@ for f in $(git diff --name-only --diff-filter=ACMRTUXB --cached); do fi d=$(clang-format "$f" | diff -u "$f" -) if ! [ -z "$d" ]; then - echo "!!! $f not compliant to coding style, here is the fix:" - echo "$d" + if [ ${#d} -le 30 ]; then + echo "!!! $f not compliant to coding style, here is the fix:" + echo "$d" + else + TEMP=$(mktemp) + echo "$d" > ${TEMP} + echo "!!! $f not compliant to coding style, here is the fix: ${TEMP} please open it in your diff viewer" + fi fail=1 fi done