Files
SERiF/commit-config/hooks/post-commit

37 lines
951 B
Bash
Executable File

#!/bin/bash
# Do not run the commit hook a second time when the headers have been added
if [[ "$SKIP_POST_COMMIT" == "1" ]]; then
exit 0
fi
# Define the formatter script
FORMATTER_SCRIPT="python ./commit-config/hooks/formatHeader.py"
# File extensions to match
EXTENSIONS="py|h|hpp|c|cpp|f|f90|build"
# Find all matching files in src which are currently staged
files=$(git diff --name-only HEAD^ | grep -E '\.('"$EXTENSIONS"')$')
# Check if any files were found
if [ -z "$files" ]; then
echo "No matching files found."
exit 0
fi
# Run the formatter on each file
for file in $files; do
echo "Updating header for: $file"
$FORMATTER_SCRIPT "$file"
done
# # Automatically stage the updated files
# git add $files
# # Optionally, commit the updated files (creates a second commit)
# SKIP_POST_COMMIT=1 git commit -m "(docs/headers) Update headers after commit" || echo "No changes to commit"
echo "Post-commit hook executed."