2010-08-12 06:57:20 +08:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
test_description='tagopt variable affects "git fetch" and is overridden by commandline.'
|
|
|
|
|
|
|
|
. ./test-lib.sh
|
|
|
|
|
|
|
|
setup_clone () {
|
|
|
|
git clone --mirror . $1 &&
|
|
|
|
git remote add remote_$1 $1 &&
|
|
|
|
(cd $1 &&
|
2013-10-30 13:32:59 +08:00
|
|
|
git tag tag_$1 &&
|
|
|
|
git branch branch_$1)
|
2010-08-12 06:57:20 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
test_expect_success setup '
|
|
|
|
test_commit test &&
|
|
|
|
setup_clone one &&
|
|
|
|
git config remote.remote_one.tagopt --no-tags &&
|
|
|
|
setup_clone two &&
|
|
|
|
git config remote.remote_two.tagopt --tags
|
|
|
|
'
|
|
|
|
|
|
|
|
test_expect_success "fetch with tagopt=--no-tags does not get tag" '
|
|
|
|
git fetch remote_one &&
|
2013-10-30 13:32:59 +08:00
|
|
|
test_must_fail git show-ref tag_one &&
|
|
|
|
git show-ref remote_one/branch_one
|
2010-08-12 06:57:20 +08:00
|
|
|
'
|
|
|
|
|
|
|
|
test_expect_success "fetch --tags with tagopt=--no-tags gets tag" '
|
2013-10-30 13:32:59 +08:00
|
|
|
(
|
|
|
|
cd one &&
|
|
|
|
git branch second_branch_one
|
|
|
|
) &&
|
2010-08-12 06:57:20 +08:00
|
|
|
git fetch --tags remote_one &&
|
2013-10-30 13:32:59 +08:00
|
|
|
git show-ref tag_one &&
|
|
|
|
git show-ref remote_one/second_branch_one
|
2010-08-12 06:57:20 +08:00
|
|
|
'
|
|
|
|
|
|
|
|
test_expect_success "fetch --no-tags with tagopt=--tags does not get tag" '
|
|
|
|
git fetch --no-tags remote_two &&
|
2013-10-30 13:32:59 +08:00
|
|
|
test_must_fail git show-ref tag_two &&
|
|
|
|
git show-ref remote_two/branch_two
|
2010-08-12 06:57:20 +08:00
|
|
|
'
|
|
|
|
|
|
|
|
test_expect_success "fetch with tagopt=--tags gets tag" '
|
2013-10-30 13:32:59 +08:00
|
|
|
(
|
|
|
|
cd two &&
|
|
|
|
git branch second_branch_two
|
|
|
|
) &&
|
2010-08-12 06:57:20 +08:00
|
|
|
git fetch remote_two &&
|
2013-10-30 13:32:59 +08:00
|
|
|
git show-ref tag_two &&
|
|
|
|
git show-ref remote_two/second_branch_two
|
2010-08-12 06:57:20 +08:00
|
|
|
'
|
|
|
|
test_done
|