#!/bin/sh

set -e

name=`basename "$0"`
dir=`dirname "$0"`
root=`cd "$dir/.." && pwd`

die () {
        echo >&2 "$1"
        exit 1
}

usage () {
        die "usage: $name"
}

case "$#" in
0)
;;
*)
        usage
;;
esac

p='svn:ignore'

for i in `find "$root" -type f -name .ignore`; do
        d=`dirname "$i"`
        tmp='/tmp/z.ign'
        l=`svn propget "$p" "$d" | wc -l`
        let l-=1
        if [ $l -ge 0 ]; then
                svn propget "$p" "$d" | head -n $l >"$tmp"
        else
                svn propget "$p" "$d" >"$tmp"
        fi
        if ! diff -q "$i" "$tmp" >/dev/null; then
                svn propset "$p" -F "$i" "$d"
        fi
        rm $tmp
done
