| 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.guess`:: |
| 21 | Provides the default value for the `--guess` or `--no-guess` |
| 22 | option in `git checkout` and `git switch`. See |
| 23 | linkgit:git-switch[1] and linkgit:git-checkout[1]. |
| 24 | |
| 25 | `checkout.workers`:: |
| 26 | The number of parallel workers to use when updating the working tree. |
| 27 | The default is one, i.e. sequential execution. If set to a value less |
| 28 | than one, Git will use as many workers as the number of logical cores |
| 29 | available. This setting and `checkout.thresholdForParallelism` affect |
| 30 | all commands that perform checkout. E.g. checkout, clone, reset, |
| 31 | sparse-checkout, etc. |
| 32 | + |
| 33 | NOTE: Parallel checkout usually delivers better performance for repositories |
| 34 | located on SSDs or over NFS. For repositories on spinning disks and/or machines |
| 35 | with a small number of cores, the default sequential checkout often performs |
| 36 | better. The size and compression level of a repository might also influence how |
| 37 | well the parallel version performs. |
| 38 | |
| 39 | `checkout.thresholdForParallelism`:: |
| 40 | When running parallel checkout with a small number of files, the cost |
| 41 | of subprocess spawning and inter-process communication might outweigh |
| 42 | the parallelization gains. This setting allows you to define the minimum |
| 43 | number of files for which parallel checkout should be attempted. The |
| 44 | default is 100. |