mirror of
https://github.com/Relintai/pandemonium_engine.git
synced 2024-12-29 07:07:14 +01:00
26 lines
767 B
Bash
26 lines
767 B
Bash
|
set -uo pipefail
|
||
|
shopt -s globstar
|
||
|
|
||
|
echo -e ".gitignore validation..."
|
||
|
|
||
|
# Get a list of files that exist in the repo but are ignored.
|
||
|
|
||
|
# The --verbose flag also includes files un-ignored via ! prefixes.
|
||
|
# We filter those out with a somewhat awkward `awk` directive.
|
||
|
# (Explanation: Split each line by : delimiters,
|
||
|
# see if the actual gitignore line shown in the third field starts with !,
|
||
|
# if it doesn't, print it.)
|
||
|
|
||
|
# ignorecase for the sake of Windows users.
|
||
|
|
||
|
output=$(git -c core.ignorecase=true check-ignore --verbose --no-index **/* | \
|
||
|
awk -F ':' '{ if ($3 !~ /^!/) print $0 }')
|
||
|
|
||
|
# Then we take this result and return success if it's empty.
|
||
|
if [ -z "$output" ]; then
|
||
|
exit 0
|
||
|
else
|
||
|
# And print the result if it isn't.
|
||
|
echo "$output"
|
||
|
exit 1
|
||
|
fi
|