1#!/bin/sh
2
3test_description='check handling of .gitmodule path with dash'
4. ./test-lib.sh
5
6test_expect_success 'create submodule with dash in path' '
7 git init upstream &&
8 git -C upstream commit --allow-empty -m base &&
9 git submodule add ./upstream sub &&
10 git mv sub ./-sub &&
11 git commit -m submodule
12'
13
14test_expect_success 'clone rejects unprotected dash' '
15 test_when_finished "rm -rf dst" &&
16 git clone --recurse-submodules . dst 2>err &&
17 test_i18ngrep ignoring err
18'
19
20test_expect_success 'fsck rejects unprotected dash' '
21 test_when_finished "rm -rf dst" &&
22 git init --bare dst &&
23 git -C dst config transfer.fsckObjects true &&
24 test_must_fail git push dst HEAD 2>err &&
25 grep gitmodulesPath err
26'
27
28test_done