X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=topgit.git;a=blobdiff_plain;f=hooks%2Fpre-commit.sh;h=4f2f16f33cf10cbf9dc5da3eeea5ef272521d9f2;hp=6dbe82cb3c211cbf82ba3c722d9f748064cc6960;hb=8b0f1f9d215d767488542a7853320d1789838d92;hpb=eff4bedc3f3ae92d47f7d78b19509ce2bd60d4e8 diff --git a/hooks/pre-commit.sh b/hooks/pre-commit.sh index 6dbe82c..4f2f16f 100644 --- a/hooks/pre-commit.sh +++ b/hooks/pre-commit.sh @@ -93,3 +93,15 @@ BEGIN { in_hunk = 0; } # therefore no endless loop in the cycle-check no_remotes=1 recurse_deps check_cycle_name "$newly_added" done + +# check for repetitions of deps +depdir="$(mktemp -t -d tg-depdir.XXXXXX)" || + die "Can't check for multiple occurrences of deps" +trap "rm -rf '$depdir'" 0 +cat_file "(i):.topdeps" | + while read dep; do + [ ! -d "$depdir/$dep" ] || + die "Multiple occurrences of the same dep: $dep" + mkdir -p "$depdir/$dep" || + die "Can't check for multiple occurrences of deps" + done