bootstrap/specs/poetry/template/.githooks/pre-commit

22 lines
453 B
Bash

#!/usr/bin/env bash
set -e
STAGED=$(
git --no-pager diff --name-only --no-color --cached --diff-filter=d |
# Remove quotations used to surrounding filenames with special characters.
sed -e "s/^\"//" -e "s/\"$//g"
)
TARGETS=()
while IFS= read -r FILENAME
do
if [[ "$FILENAME" =~ .*\.py ]]; then
TARGETS+=("${FILENAME}")
fi
done <<< "$STAGED"
if (( ${#TARGETS[@]} )); then
black --quiet "${TARGETS[@]}"
git add "${TARGETS[@]}"
fi