checkout: split part of it to new command 'switch'
[git] / Documentation / config / checkout.txt
1 checkout.defaultRemote::
2         When you run 'git checkout <something>'
3         or 'git switch <something>' and only have one
4         remote, it may implicitly fall back on checking out and
5         tracking e.g. 'origin/<something>'. This stops working as soon
6         as you have more than one remote with a '<something>'
7         reference. This setting allows for setting the name of a
8         preferred remote that should always win when it comes to
9         disambiguation. The typical use-case is to set this to
10         `origin`.
11 +
12 Currently this is used by linkgit:git-switch[1] and
13 linkgit:git-checkout[1] when 'git checkout <something>'
14 or 'git switch <something>'
15 will checkout the '<something>' branch on another remote,
16 and by linkgit:git-worktree[1] when 'git worktree add' refers to a
17 remote branch. This setting might be used for other checkout-like
18 commands or functionality in the future.
19
20 checkout.optimizeNewBranch::
21         Optimizes the performance of "git checkout -b <new_branch>" when
22         using sparse-checkout.  When set to true, git will not update the
23         repo based on the current sparse-checkout settings.  This means it
24         will not update the skip-worktree bit in the index nor add/remove
25         files in the working directory to reflect the current sparse checkout
26         settings nor will it show the local changes.