# Get relative path of the root directory of the project | |
rdir=`git rev-parse --git-dir` | |
rel_path="$(dirname "$rdir")" | |
# Change to that path and run the file | |
cd $rel_path | |
echo "pre-commit hook started..." | |
# Activate virtual environment | |
echo "activating venv..." | |
if test -f .env/bin/activate | |
then source .env/bin/activate && echo "venv activated." | |
elif test -f .env/Scripts/activate | |
then source .env/Scripts/activate && echo "venv activated." | |
else exit 1 | |
fi | |
# Run auto formatting on all staged python files, then add those changes | |
echo "auto-formatting code..." | |
if autopep8 --in-place `git diff --name-status --cached | grep '.py' | awk 'match($1, "A|M"){print $2}'` && git add `git diff --name-status --cached | grep '.py' | awk 'match($1, "A|M"){print $2}'` | |
then echo "code was auto-formatted." | |
else echo "no code was auto-formatted." | |
fi | |
exit 0 | |