strict_ignore() {
[[ -n "$1" ]] || exit 1
local repo="${1%/}/"
local ignore
ignore=$(find "$repo" -path "$repo".git -prune -o -print \
| sed "s|$repo||g; /^$/d" \
| awk '{print "!"$0}' \
| sort)
printf "*\n%s\n" "$ignore"
}