1branch.autoSetupMerge:: 2 Tells 'git branch' and 'git checkout' to set up new branches 3 so that linkgit:git-pull[1] will appropriately merge from the 4 starting point branch. Note that even if this option is not set, 5 this behavior can be chosen per-branch using the `--track` 6 and `--no-track` options. The valid settings are: `false` -- no 7 automatic setup is done; `true` -- automatic setup is done when the 8 starting point is a remote-tracking branch; `always` -- 9 automatic setup is done when the starting point is either a 10 local branch or remote-tracking 11 branch. This option defaults to true. 12 13branch.autoSetupRebase:: 14 When a new branch is created with 'git branch' or 'git checkout' 15 that tracks another branch, this variable tells Git to set 16 up pull to rebase instead of merge (see "branch.<name>.rebase"). 17 When `never`, rebase is never automatically set to true. 18 When `local`, rebase is set to true for tracked branches of 19 other local branches. 20 When `remote`, rebase is set to true for tracked branches of 21 remote-tracking branches. 22 When `always`, rebase will be set to true for all tracking 23 branches. 24 See "branch.autoSetupMerge" for details on how to set up a 25 branch to track another branch. 26 This option defaults to never. 27 28branch.sort:: 29 This variable controls the sort ordering of branches when displayed by 30 linkgit:git-branch[1]. Without the "--sort=<value>" option provided, the 31 value of this variable will be used as the default. 32 See linkgit:git-for-each-ref[1] field names for valid values. 33 34branch.<name>.remote:: 35 When on branch <name>, it tells 'git fetch' and 'git push' 36 which remote to fetch from/push to. The remote to push to 37 may be overridden with `remote.pushDefault` (for all branches). 38 The remote to push to, for the current branch, may be further 39 overridden by `branch.<name>.pushRemote`. If no remote is 40 configured, or if you are not on any branch, it defaults to 41 `origin` for fetching and `remote.pushDefault` for pushing. 42 Additionally, `.` (a period) is the current local repository 43 (a dot-repository), see `branch.<name>.merge`'s final note below. 44 45branch.<name>.pushRemote:: 46 When on branch <name>, it overrides `branch.<name>.remote` for 47 pushing. It also overrides `remote.pushDefault` for pushing 48 from branch <name>. When you pull from one place (e.g. your 49 upstream) and push to another place (e.g. your own publishing 50 repository), you would want to set `remote.pushDefault` to 51 specify the remote to push to for all branches, and use this 52 option to override it for a specific branch. 53 54branch.<name>.merge:: 55 Defines, together with branch.<name>.remote, the upstream branch 56 for the given branch. It tells 'git fetch'/'git pull'/'git rebase' which 57 branch to merge and can also affect 'git push' (see push.default). 58 When in branch <name>, it tells 'git fetch' the default 59 refspec to be marked for merging in FETCH_HEAD. The value is 60 handled like the remote part of a refspec, and must match a 61 ref which is fetched from the remote given by 62 "branch.<name>.remote". 63 The merge information is used by 'git pull' (which at first calls 64 'git fetch') to lookup the default branch for merging. Without 65 this option, 'git pull' defaults to merge the first refspec fetched. 66 Specify multiple values to get an octopus merge. 67 If you wish to setup 'git pull' so that it merges into <name> from 68 another branch in the local repository, you can point 69 branch.<name>.merge to the desired branch, and use the relative path 70 setting `.` (a period) for branch.<name>.remote. 71 72branch.<name>.mergeOptions:: 73 Sets default options for merging into branch <name>. The syntax and 74 supported options are the same as those of linkgit:git-merge[1], but 75 option values containing whitespace characters are currently not 76 supported. 77 78branch.<name>.rebase:: 79 When true, rebase the branch <name> on top of the fetched branch, 80 instead of merging the default branch from the default remote when 81 "git pull" is run. See "pull.rebase" for doing this in a non 82 branch-specific manner. 83+ 84When `merges`, pass the `--rebase-merges` option to 'git rebase' 85so that the local merge commits are included in the rebase (see 86linkgit:git-rebase[1] for details). 87+ 88When preserve, also pass `--preserve-merges` along to 'git rebase' 89so that locally committed merge commits will not be flattened 90by running 'git pull'. 91+ 92When the value is `interactive`, the rebase is run in interactive mode. 93+ 94*NOTE*: this is a possibly dangerous operation; do *not* use 95it unless you understand the implications (see linkgit:git-rebase[1] 96for details). 97 98branch.<name>.description:: 99 Branch description, can be edited with 100 `git branch --edit-description`. Branch description is 101 automatically added in the format-patch cover letter or 102 request-pull summary.