Merge branch 'mg/detached-head-report'
"git branch" on a detached HEAD always said "(detached from xyz)", even when "git status" would report "detached at xyz". The HEAD is actually at xyz and haven't been moved since it was detached in such a case, but the user cannot read what the current value of HEAD is when "detached from" is used. * mg/detached-head-report: branch: name detached HEAD analogous to status wt-status: refactor detached HEAD analysis
This commit is contained in:
@ -96,7 +96,7 @@ test_expect_success 'git branch -v pattern does not show branch summaries' '
|
||||
|
||||
test_expect_success 'git branch shows detached HEAD properly' '
|
||||
cat >expect <<EOF &&
|
||||
* (detached from $(git rev-parse --short HEAD^0))
|
||||
* (HEAD detached at $(git rev-parse --short HEAD^0))
|
||||
branch-one
|
||||
branch-two
|
||||
master
|
||||
@ -106,4 +106,41 @@ EOF
|
||||
test_i18ncmp expect actual
|
||||
'
|
||||
|
||||
test_expect_success 'git branch shows detached HEAD properly after moving' '
|
||||
cat >expect <<EOF &&
|
||||
* (HEAD detached from $(git rev-parse --short HEAD))
|
||||
branch-one
|
||||
branch-two
|
||||
master
|
||||
EOF
|
||||
git reset --hard HEAD^1 &&
|
||||
git branch >actual &&
|
||||
test_i18ncmp expect actual
|
||||
'
|
||||
|
||||
test_expect_success 'git branch shows detached HEAD properly from tag' '
|
||||
cat >expect <<EOF &&
|
||||
* (HEAD detached at fromtag)
|
||||
branch-one
|
||||
branch-two
|
||||
master
|
||||
EOF
|
||||
git tag fromtag master &&
|
||||
git checkout fromtag &&
|
||||
git branch >actual &&
|
||||
test_i18ncmp expect actual
|
||||
'
|
||||
|
||||
test_expect_success 'git branch shows detached HEAD properly after moving from tag' '
|
||||
cat >expect <<EOF &&
|
||||
* (HEAD detached from fromtag)
|
||||
branch-one
|
||||
branch-two
|
||||
master
|
||||
EOF
|
||||
git reset --hard HEAD^1 &&
|
||||
git branch >actual &&
|
||||
test_i18ncmp expect actual
|
||||
'
|
||||
|
||||
test_done
|
||||
|
Reference in New Issue
Block a user