| test_description='tagopt variable affects "git fetch" and is overridden by commandline.' |
| git clone --mirror . $1 && |
| git remote add remote_$1 $1 && |
| test_expect_success setup ' |
| git config remote.remote_one.tagopt --no-tags && |
| git config remote.remote_two.tagopt --tags |
| test_expect_success "fetch with tagopt=--no-tags does not get tag" ' |
| test_must_fail git show-ref tag_one && |
| git show-ref remote_one/branch_one |
| test_expect_success "fetch --tags with tagopt=--no-tags gets tag" ' |
| git branch second_branch_one |
| git fetch --tags remote_one && |
| git show-ref remote_one/second_branch_one |
| test_expect_success "fetch --no-tags with tagopt=--tags does not get tag" ' |
| git fetch --no-tags remote_two && |
| test_must_fail git show-ref tag_two && |
| git show-ref remote_two/branch_two |
| test_expect_success "fetch with tagopt=--tags gets tag" ' |
| git branch second_branch_two |
| git show-ref remote_two/second_branch_two |