From ab8e267e2861f33750a1320bdcf39db03134dd1b Mon Sep 17 00:00:00 2001 From: FintasticMan Date: Tue, 3 Jan 2023 16:25:55 +0000 Subject: [PATCH] hook: Update pre-commit git hook --- hooks/pre-commit | 27 +++++---------------------- 1 file changed, 5 insertions(+), 22 deletions(-) diff --git a/hooks/pre-commit b/hooks/pre-commit index 5e10aa19..9247f8a8 100755 --- a/hooks/pre-commit +++ b/hooks/pre-commit @@ -1,25 +1,8 @@ -#!/bin/bash -if clang-format --version | grep -q 'version 11\.'; then - CLANG_FORMAT_EXECUTABLE="clang-format" -else - CLANG_FORMAT_EXECUTABLE="clang-format-11" -fi +#!/bin/sh -if ! command -v $CLANG_FORMAT_EXECUTABLE &> /dev/null -then - echo $CLANG_FORMAT_EXECUTABLE does not exist, make sure to install it - exit 1 -fi +changedFiles="$(git clang-format --extensions cpp,h --style file --staged -q --diffstat -- ':!src/FreeRTOS' ':!src/libs')" +git clang-format --extensions cpp,h --style file --staged -q -- ':!src/FreeRTOS' ':!src/libs' -for FILE in $(git diff --cached --name-only) -do - if [[ "$FILE" =~ src/[A-Za-z0-9\ \-]+*\.(c|h|cpp|cc)$ ]]; then - echo Autoformatting $FILE with $CLANG_FORMAT_EXECUTABLE - $CLANG_FORMAT_EXECUTABLE -style=file -i -- $FILE - git add -- $FILE - elif [[ "$FILE" =~ src/(components|displayapp|drivers|heartratetask|logging|systemtask)/.*\.(c|h|cpp|cc)$ ]]; then - echo Autoformatting $FILE with $CLANG_FORMAT_EXECUTABLE - $CLANG_FORMAT_EXECUTABLE -style=file -i -- $FILE - git add -- $FILE - fi +echo "$changedFiles" | head -n -1 | cut -d ' ' -f 1 | while read -r file; do + git add -- "$file" done