#!/bin/sh

disallowed_files=()

while read old_rev new_rev ref
do
  for file in $(git diff --name-only $old_rev $new_rev)
  do
    if [[ $file =~ / ]]; then
      disallowed_files+=($file)
    fi
  done
done

if [ ${#disallowed_files[@]} -gt 0 ]; then
  echo "Pushing files in folders is not allowed:"
  for file in "${disallowed_files[@]}"; do
    echo "  $file"
  done
  exit 1
fi
