diff --git a/Documentation/git-branch.txt b/Documentation/git-branch.txt index 2d52ae396b..731e340cbc 100644 --- a/Documentation/git-branch.txt +++ b/Documentation/git-branch.txt @@ -16,7 +16,7 @@ SYNOPSIS [--points-at ] [--format=] [(-r | --remotes) | (-a | --all)] [--list] [...] -'git branch' [--track [direct|inherit] | --no-track] [-f] [] +'git branch' [--track[=(direct|inherit)] | --no-track] [-f] [] 'git branch' (--set-upstream-to= | -u ) [] 'git branch' --unset-upstream [] 'git branch' (-m | -M) [] @@ -206,7 +206,7 @@ This option is only applicable in non-verbose mode. Display the full sha1s in the output listing rather than abbreviating them. -t:: ---track [inherit|direct]:: +--track[=(direct|inherit)]:: When creating a new branch, set up `branch..remote` and `branch..merge` configuration entries to set "upstream" tracking configuration for the new branch. This @@ -216,11 +216,11 @@ This option is only applicable in non-verbose mode. upstream when the new branch is checked out. + The exact upstream branch is chosen depending on the optional argument: -`--track` or `--track direct` means to use the start-point branch itself as the -upstream; `--track inherit` means to copy the upstream configuration of the -start-point branch. +`-t`, `--track`, or `--track=direct` means to use the start-point branch +itself as the upstream; `--track=inherit` means to copy the upstream +configuration of the start-point branch. + -`--track direct` is the default when the start point is a remote-tracking branch. +`--track=direct` is the default when the start point is a remote-tracking branch. Set the branch.autoSetupMerge configuration variable to `false` if you want `git switch`, `git checkout` and `git branch` to always behave as if `--no-track` were given. Set it to `always` if you want this behavior when the diff --git a/Documentation/git-checkout.txt b/Documentation/git-checkout.txt index 2a90ea6cd0..9f37e22e13 100644 --- a/Documentation/git-checkout.txt +++ b/Documentation/git-checkout.txt @@ -156,7 +156,7 @@ of it"). linkgit:git-branch[1] for details. -t:: ---track [direct|inherit]:: +--track[=(direct|inherit)]:: When creating a new branch, set up "upstream" configuration. See "--track" in linkgit:git-branch[1] for details. + diff --git a/builtin/branch.c b/builtin/branch.c index 0c8d8a8827..4ce2a24754 100644 --- a/builtin/branch.c +++ b/builtin/branch.c @@ -638,7 +638,7 @@ int cmd_branch(int argc, const char **argv, const char *prefix) OPT__VERBOSE(&filter.verbose, N_("show hash and subject, give twice for upstream branch")), OPT__QUIET(&quiet, N_("suppress informational messages")), - OPT_CALLBACK_F('t', "track", &track, N_("mode"), + OPT_CALLBACK_F('t', "track", &track, "(direct|inherit)", N_("set branch tracking configuration"), PARSE_OPT_OPTARG, parse_opt_tracking_mode), diff --git a/builtin/checkout.c b/builtin/checkout.c index 6a5dd2a2a2..0bc2e63510 100644 --- a/builtin/checkout.c +++ b/builtin/checkout.c @@ -1549,7 +1549,7 @@ static struct option *add_common_switch_branch_options( { struct option options[] = { OPT_BOOL('d', "detach", &opts->force_detach, N_("detach HEAD at named commit")), - OPT_CALLBACK_F('t', "track", &opts->track, N_("mode"), + OPT_CALLBACK_F('t', "track", &opts->track, "(direct|inherit)", N_("set branch tracking configuration"), PARSE_OPT_OPTARG, parse_opt_tracking_mode),