Browse Source

branch: -v does not automatically imply --list

"branch -v" without other options or parameters still works in the list
mode, but that is not because there is "-v" but because there is no
parameter nor option.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Michael J Gruber 13 years ago committed by Junio C Hamano
parent
commit
7b787599e4
  1. 6
      Documentation/git-branch.txt
  2. 3
      builtin/branch.c
  3. 8
      t/t3203-branch-output.sh

6
Documentation/git-branch.txt

@ -21,7 +21,7 @@ DESCRIPTION @@ -21,7 +21,7 @@ DESCRIPTION
With no arguments, existing branches are listed and the current branch will
be highlighted with an asterisk. Option `-r` causes the remote-tracking
branches to be listed, and option `-a` shows both. This list mode is also
activated by the `--list` and `-v` options (see below).
activated by the `--list` option (see below).
<pattern> restricts the output to matching branches, the pattern is a shell
wildcard (i.e., matched using fnmatch(3))
Multiple patterns may be given; if any of them matches, the tag is shown.
@ -120,10 +120,10 @@ OPTIONS @@ -120,10 +120,10 @@ OPTIONS

-v::
--verbose::
Show sha1 and commit subject line for each head, along with
When in list mode,
show sha1 and commit subject line for each head, along with
relationship to upstream branch (if any). If given twice, print
the name of the upstream branch, as well.
`--list` is implied by all verbosity options.

--abbrev=<length>::
Alter the sha1's minimum display length in the output listing.

3
builtin/branch.c

@ -712,8 +712,7 @@ int cmd_branch(int argc, const char **argv, const char *prefix) @@ -712,8 +712,7 @@ int cmd_branch(int argc, const char **argv, const char *prefix)
argc = parse_options(argc, argv, prefix, options, builtin_branch_usage,
0);

if (!delete && !rename && !force_create &&
(argc == 0 || (verbose && argc)))
if (!delete && !rename && !force_create && argc == 0)
list = 1;

if (!!delete + !!rename + !!force_create + !!list > 1)

8
t/t3203-branch-output.sh

@ -84,12 +84,16 @@ cat >expect <<'EOF' @@ -84,12 +84,16 @@ cat >expect <<'EOF'
two
one
EOF
test_expect_success 'git branch -v pattern shows branch summaries' '
git branch -v branch* >tmp &&
test_expect_success 'git branch --list -v pattern shows branch summaries' '
git branch --list -v branch* >tmp &&
awk "{print \$NF}" <tmp >actual &&
test_cmp expect actual
'

test_expect_success 'git branch -v pattern does not show branch summaries' '
test_must_fail git branch -v branch*
'

cat >expect <<'EOF'
* (no branch)
branch-one

Loading…
Cancel
Save