Merge branch 'jc/branch-parseopt-fix'
Command line parser fixes. * jc/branch-parseopt-fix: branch: reject "--no-all" and "--no-remotes" early
This commit is contained in:
@ -720,8 +720,9 @@ int cmd_branch(int argc, const char **argv, const char *prefix)
|
|||||||
OPT_STRING('u', "set-upstream-to", &new_upstream, N_("upstream"), N_("change the upstream info")),
|
OPT_STRING('u', "set-upstream-to", &new_upstream, N_("upstream"), N_("change the upstream info")),
|
||||||
OPT_BOOL(0, "unset-upstream", &unset_upstream, N_("unset the upstream info")),
|
OPT_BOOL(0, "unset-upstream", &unset_upstream, N_("unset the upstream info")),
|
||||||
OPT__COLOR(&branch_use_color, N_("use colored output")),
|
OPT__COLOR(&branch_use_color, N_("use colored output")),
|
||||||
OPT_SET_INT('r', "remotes", &filter.kind, N_("act on remote-tracking branches"),
|
OPT_SET_INT_F('r', "remotes", &filter.kind, N_("act on remote-tracking branches"),
|
||||||
FILTER_REFS_REMOTES),
|
FILTER_REFS_REMOTES,
|
||||||
|
PARSE_OPT_NONEG),
|
||||||
OPT_CONTAINS(&filter.with_commit, N_("print only branches that contain the commit")),
|
OPT_CONTAINS(&filter.with_commit, N_("print only branches that contain the commit")),
|
||||||
OPT_NO_CONTAINS(&filter.no_commit, N_("print only branches that don't contain the commit")),
|
OPT_NO_CONTAINS(&filter.no_commit, N_("print only branches that don't contain the commit")),
|
||||||
OPT_WITH(&filter.with_commit, N_("print only branches that contain the commit")),
|
OPT_WITH(&filter.with_commit, N_("print only branches that contain the commit")),
|
||||||
@ -729,8 +730,9 @@ int cmd_branch(int argc, const char **argv, const char *prefix)
|
|||||||
OPT__ABBREV(&filter.abbrev),
|
OPT__ABBREV(&filter.abbrev),
|
||||||
|
|
||||||
OPT_GROUP(N_("Specific git-branch actions:")),
|
OPT_GROUP(N_("Specific git-branch actions:")),
|
||||||
OPT_SET_INT('a', "all", &filter.kind, N_("list both remote-tracking and local branches"),
|
OPT_SET_INT_F('a', "all", &filter.kind, N_("list both remote-tracking and local branches"),
|
||||||
FILTER_REFS_REMOTES | FILTER_REFS_BRANCHES),
|
FILTER_REFS_REMOTES | FILTER_REFS_BRANCHES,
|
||||||
|
PARSE_OPT_NONEG),
|
||||||
OPT_BIT('d', "delete", &delete, N_("delete fully merged branch"), 1),
|
OPT_BIT('d', "delete", &delete, N_("delete fully merged branch"), 1),
|
||||||
OPT_BIT('D', NULL, &delete, N_("delete branch (even if not merged)"), 2),
|
OPT_BIT('D', NULL, &delete, N_("delete branch (even if not merged)"), 2),
|
||||||
OPT_BIT('m', "move", &rename, N_("move/rename a branch and its reflog"), 1),
|
OPT_BIT('m', "move", &rename, N_("move/rename a branch and its reflog"), 1),
|
||||||
|
@ -55,9 +55,17 @@ cat >expect <<'EOF'
|
|||||||
EOF
|
EOF
|
||||||
test_expect_success 'git branch -r shows remote branches' '
|
test_expect_success 'git branch -r shows remote branches' '
|
||||||
git branch -r >actual &&
|
git branch -r >actual &&
|
||||||
|
test_cmp expect actual &&
|
||||||
|
|
||||||
|
git branch --remotes >actual &&
|
||||||
test_cmp expect actual
|
test_cmp expect actual
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'git branch --no-remotes is rejected' '
|
||||||
|
test_must_fail git branch --no-remotes 2>err &&
|
||||||
|
grep "unknown option .no-remotes." err
|
||||||
|
'
|
||||||
|
|
||||||
cat >expect <<'EOF'
|
cat >expect <<'EOF'
|
||||||
branch-one
|
branch-one
|
||||||
branch-two
|
branch-two
|
||||||
@ -68,9 +76,17 @@ cat >expect <<'EOF'
|
|||||||
EOF
|
EOF
|
||||||
test_expect_success 'git branch -a shows local and remote branches' '
|
test_expect_success 'git branch -a shows local and remote branches' '
|
||||||
git branch -a >actual &&
|
git branch -a >actual &&
|
||||||
|
test_cmp expect actual &&
|
||||||
|
|
||||||
|
git branch --all >actual &&
|
||||||
test_cmp expect actual
|
test_cmp expect actual
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'git branch --no-all is rejected' '
|
||||||
|
test_must_fail git branch --no-all 2>err &&
|
||||||
|
grep "unknown option .no-all." err
|
||||||
|
'
|
||||||
|
|
||||||
cat >expect <<'EOF'
|
cat >expect <<'EOF'
|
||||||
two
|
two
|
||||||
one
|
one
|
||||||
|
Reference in New Issue
Block a user