From: Junio C Hamano Date: Fri, 1 Apr 2011 23:20:45 +0000 (-0700) Subject: Merge branch 'jh/maint-do-not-track-non-branches' into maint X-Git-Tag: v1.7.4.3~7 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/ac53196d9a1f63785de199dee4b851378510f729?ds=inline;hp=-c Merge branch 'jh/maint-do-not-track-non-branches' into maint * jh/maint-do-not-track-non-branches: branch/checkout --track: Ensure that upstream branch is indeed a branch --- ac53196d9a1f63785de199dee4b851378510f729 diff --combined t/t3200-branch.sh index f308235f5d,55af032f2e..78ce09f9d7 --- a/t/t3200-branch.sh +++ b/t/t3200-branch.sh @@@ -26,17 -26,6 +26,17 @@@ test_expect_success ! test -f .git/refs/heads/--help ' +test_expect_success 'branch -h in broken repository' ' + mkdir broken && + ( + cd broken && + git init && + >.git/refs/heads/master && + test_expect_code 129 git branch -h >usage 2>&1 + ) && + grep "[Uu]sage" broken/usage +' + test_expect_success \ 'git branch abc should create a branch' \ 'git branch abc && test -f .git/refs/heads/abc' @@@ -223,6 -212,11 +223,11 @@@ test_expect_success 'branch from non-branch HEAD w/--track causes failure' \ 'test_must_fail git branch --track my10 HEAD^' + test_expect_success \ + 'branch from tag w/--track causes failure' \ + 'git tag foobar && + test_must_fail git branch --track my11 foobar' + # Keep this test last, as it changes the current branch cat >expect < 1117150200 +0000 branch: Created from master @@@ -488,6 -482,15 +493,15 @@@ test_expect_success 'autosetuprebase al test "z$(git config branch.myr20.rebase)" = z ' + test_expect_success 'autosetuprebase always on detached HEAD' ' + git config branch.autosetupmerge always && + test_when_finished git checkout master && + git checkout HEAD^0 && + git branch my11 && + test -z "$(git config branch.my11.remote)" && + test -z "$(git config branch.my11.merge)" + ' + test_expect_success 'detect misconfigured autosetuprebase (bad value)' ' git config branch.autosetuprebase garbage && test_must_fail git branch diff --combined t/t6040-tracking-info.sh index 1e0447f615,10bf3dee3f..cb85132642 --- a/t/t6040-tracking-info.sh +++ b/t/t6040-tracking-info.sh @@@ -60,7 -60,7 +60,7 @@@ test_expect_success 'checkout' test_expect_success 'checkout with local tracked branch' ' git checkout master && - git checkout follower >actual + git checkout follower >actual && grep "is ahead of" actual ' @@@ -74,20 -74,20 +74,20 @@@ test_expect_success 'status' grep "have 1 and 1 different" actual ' - test_expect_success 'status when tracking lightweight tags' ' + test_expect_success 'fail to track lightweight tags' ' git checkout master && git tag light && - git branch --track lighttrack light >actual && - grep "set up to track" actual && - git checkout lighttrack + test_must_fail git branch --track lighttrack light >actual && + test_must_fail grep "set up to track" actual && + test_must_fail git checkout lighttrack ' - test_expect_success 'status when tracking annotated tags' ' + test_expect_success 'fail to track annotated tags' ' git checkout master && git tag -m heavy heavy && - git branch --track heavytrack heavy >actual && - grep "set up to track" actual && - git checkout heavytrack + test_must_fail git branch --track heavytrack heavy >actual && + test_must_fail grep "set up to track" actual && + test_must_fail git checkout heavytrack ' test_expect_success 'setup tracking with branch --set-upstream on existing branch' '