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
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.
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.