https://gitlab.opengeosys.org/ogs/ogs.git
Raw File
Tip revision: 96feceeb04aa1c4c9f6f60515dcfc8737dd4db6b authored by Lars Bilke on 21 June 2021, 11:34:13 UTC
Merge branch 'tailwind-update' into 'master'
Tip revision: 96fecee
pre-commit
#!/usr/bin/env bash

# Activate via the following setting in .git/config
# [core]
#    hooksPath = .hooks
#
# **Or** by copying this file to .git/hooks/pre-commit

echo "Running pre-commit hook.."

set -e

RETURN_CODE=0

### git-lfs check ###
BINARY_FILES=""
CHANGED_FILES=$(git diff --cached --name-only --diff-filter=ACM)
LFS_FILES=$(echo $CHANGED_FILES | xargs git check-attr filter | grep 'filter: lfs$' | sed -e 's/: filter: lfs//')

for FILE in $LFS_FILES; do
    SOFT_SHA=$(git hash-object -w $FILE)
    RAW_SHA=$(git hash-object -w --no-filters $FILE)

    if [ $SOFT_SHA == $RAW_SHA ]; then
        BINARY_FILES="$FILE\n$BINARY_FILES"
    fi
done

if [[ -n "$BINARY_FILES" ]]; then
    echo "Attention!"
    echo "----------"
    echo "You tried to commit files tracked by git-lfs as standard git objects:"
    echo -e "\x1B[31m$BINARY_FILES\x1B[0m"
    echo "Revert your changes and commit those files with git-lfs!"
    echo "See https://docs.opengeosys.org/docs/devguide/getting-started/prerequisites"
    echo "----------"
    RETURN_CODE=1
fi

exit $RETURN_CODE
back to top