]>
Commit | Line | Data |
---|---|---|
1 | #!/bin/sh | |
2 | ||
3 | test_description='tagopt variable affects "git fetch" and is overridden by commandline.' | |
4 | ||
5 | . ./test-lib.sh | |
6 | ||
7 | setup_clone () { | |
8 | git clone --mirror . $1 && | |
9 | git remote add remote_$1 $1 && | |
10 | (cd $1 && | |
11 | git tag tag_$1 && | |
12 | git branch branch_$1) | |
13 | } | |
14 | ||
15 | test_expect_success setup ' | |
16 | test_commit test && | |
17 | setup_clone one && | |
18 | git config remote.remote_one.tagopt --no-tags && | |
19 | setup_clone two && | |
20 | git config remote.remote_two.tagopt --tags | |
21 | ' | |
22 | ||
23 | test_expect_success "fetch with tagopt=--no-tags does not get tag" ' | |
24 | git fetch remote_one && | |
25 | test_must_fail git show-ref tag_one && | |
26 | git show-ref remote_one/branch_one | |
27 | ' | |
28 | ||
29 | test_expect_success "fetch --tags with tagopt=--no-tags gets tag" ' | |
30 | ( | |
31 | cd one && | |
32 | git branch second_branch_one | |
33 | ) && | |
34 | git fetch --tags remote_one && | |
35 | git show-ref tag_one && | |
36 | git show-ref remote_one/second_branch_one | |
37 | ' | |
38 | ||
39 | test_expect_success "fetch --no-tags with tagopt=--tags does not get tag" ' | |
40 | git fetch --no-tags remote_two && | |
41 | test_must_fail git show-ref tag_two && | |
42 | git show-ref remote_two/branch_two | |
43 | ' | |
44 | ||
45 | test_expect_success "fetch with tagopt=--tags gets tag" ' | |
46 | ( | |
47 | cd two && | |
48 | git branch second_branch_two | |
49 | ) && | |
50 | git fetch remote_two && | |
51 | git show-ref tag_two && | |
52 | git show-ref remote_two/second_branch_two | |
53 | ' | |
54 | test_done |