| #!/bin/sh |
| |
| . git-sh-setup |
| |
| # Avoid duplicated test numbers --- checking 'seen' is enough |
| # as we will usually add, but never remove them. |
| added=$( |
| git diff-index --cached --name-only --diff-filter=A HEAD -- t | |
| sed -ne 's|t/\(t[0-9][0-9][0-9][0-9]\)-.*\.sh$|\1|p' |
| ) |
| if test -n "$added" |
| then |
| bad= |
| exists=$( |
| git ls-tree --name-only seen:t | |
| sed -ne 's|^\(t[0-9][0-9][0-9][0-9]\)-.*\.sh$|\1|p' | |
| tr "\012" " " |
| ) |
| for a in $added |
| do |
| case " $exists " in |
| *" $a "*) |
| echo >&2 "Test number $a already taken" |
| bad=1 |
| ;; |
| esac |
| done |
| if test -n "$bad" |
| then |
| : exit 1 |
| fi |
| fi |