a string, an integer, or a boolean. Boolean values may be given as yes/no,
0/1 or true/false. Case is not significant in boolean values, when
converting value to the canonical form using '--bool' type specifier;
-`git-config` will ensure that the output is "true" or "false".
+'git-config' will ensure that the output is "true" or "false".
String values may be entirely or partially enclosed in double quotes.
You need to enclose variable value in double quotes if you want to
# Our diff algorithm
[diff]
- external = "/usr/local/bin/gnu-diff -u"
+ external = /usr/local/bin/diff-wrapper
renames = true
[branch "devel"]
the working copy are ignored; useful on broken filesystems like FAT.
See linkgit:git-update-index[1]. True by default.
+core.trustctime::
+ If false, the ctime differences between the index and the
+ working copy are ignored; useful when the inode change time
+ is regularly modified by something outside Git (file system
+ crawlers and some backup systems).
+ See linkgit:git-update-index[1]. True by default.
+
core.quotepath::
- The commands that output paths (e.g. `ls-files`,
- `diff`), when not given the `-z` option, will quote
+ The commands that output paths (e.g. 'ls-files',
+ 'diff'), when not given the `-z` option, will quote
"unusual" characters in the pathname by enclosing the
pathname in a double-quote pair and with backslashes the
same way strings in C source code are quoted. If this
core.whitespace::
A comma separated list of common whitespace problems to
- notice. `git-diff` will use `color.diff.whitespace` to
- highlight them, and `git-apply --whitespace=error` will
- consider them as errors:
+ notice. 'git-diff' will use `color.diff.whitespace` to
+ highlight them, and 'git-apply --whitespace=error' will
+ consider them as errors. You can prefix `-` to disable
+ any of them (e.g. `-trailing-space`):
+
* `trailing-space` treats trailing whitespaces at the end of the line
as an error (enabled by default).
"gitk --all --not ORIG_HEAD".
apply.whitespace::
- Tells `git-apply` how to handle whitespaces, in the same way
+ Tells 'git-apply' how to handle whitespaces, in the same way
as the '--whitespace' option. See linkgit:git-apply[1].
branch.autosetupmerge::
- Tells `git-branch` and `git-checkout` to setup new branches
+ Tells 'git-branch' and 'git-checkout' to setup new branches
so that linkgit:git-pull[1] will appropriately merge from the
starting point branch. Note that even if this option is not set,
this behavior can be chosen per-branch using the `--track`
branch. This option defaults to true.
branch.autosetuprebase::
- When a new branch is created with `git-branch` or `git-checkout`
+ When a new branch is created with 'git-branch' or 'git-checkout'
that tracks another branch, this variable tells git to set
up pull to rebase instead of merge (see "branch.<name>.rebase").
When `never`, rebase is never automatically set to true.
This option defaults to never.
branch.<name>.remote::
- When in branch <name>, it tells `git-fetch` which remote to fetch.
- If this option is not given, `git-fetch` defaults to remote "origin".
+ When in branch <name>, it tells 'git-fetch' which remote to fetch.
+ If this option is not given, 'git-fetch' defaults to remote "origin".
branch.<name>.merge::
- When in branch <name>, it tells `git-fetch` the default
+ When in branch <name>, it tells 'git-fetch' the default
refspec to be marked for merging in FETCH_HEAD. The value is
handled like the remote part of a refspec, and must match a
ref which is fetched from the remote given by
"branch.<name>.remote".
- The merge information is used by `git-pull` (which at first calls
- `git-fetch`) to lookup the default branch for merging. Without
- this option, `git-pull` defaults to merge the first refspec fetched.
+ The merge information is used by 'git-pull' (which at first calls
+ 'git-fetch') to lookup the default branch for merging. Without
+ this option, 'git-pull' defaults to merge the first refspec fetched.
Specify multiple values to get an octopus merge.
- If you wish to setup `git-pull` so that it merges into <name> from
+ If you wish to setup 'git-pull' so that it merges into <name> from
another branch in the local repository, you can point
branch.<name>.merge to the desired branch, and use the special setting
`.` (a period) for branch.<name>.remote.
colors only when the output is to the terminal. Defaults to false.
color.interactive.<slot>::
- Use customized color for `git-add --interactive`
+ Use customized color for 'git-add --interactive'
output. `<slot>` may be `prompt`, `header`, or `help`, for
three distinct types of normal output from interactive
programs. The values of these variables may be specified as
take precedence over this setting. Defaults to false.
diff.autorefreshindex::
- When using `git-diff` to compare with work tree
+ When using 'git-diff' to compare with work tree
files, do not consider stat-only change as changed.
Instead, silently run `git update-index --refresh` to
update the cached stat information for paths whose
contents in the work tree match the contents in the
index. This option defaults to true. Note that this
- affects only `git-diff` Porcelain, and not lower level
- `diff` commands, such as `git-diff-files`.
+ affects only 'git-diff' Porcelain, and not lower level
+ 'diff' commands, such as 'git-diff-files'.
diff.external::
If this config variable is set, diff generation is not
performed using the internal diff machinery, but using the
- given command. Note: if you want to use an external diff
- program only on a subset of your files, you might want to
- use linkgit:gitattributes[5] instead.
+ given command. Can be overridden with the `GIT_EXTERNAL_DIFF'
+ environment variable. The command is called with parameters
+ as described under "git Diffs" in linkgit:git[1]. Note: if
+ you want to use an external diff program only on a subset of
+ your files, you might want to use linkgit:gitattributes[5] instead.
diff.renameLimit::
The number of files to consider when performing the copy/rename
default value is 50. Setting this to 0 disables it.
gc.packrefs::
- `git-gc` does not run `git pack-refs` in a bare repository by
+ 'git-gc' does not run `git pack-refs` in a bare repository by
default so that older dumb-transport clients can still fetch
- from the repository. Setting this to `true` lets `git-gc`
+ from the repository. Setting this to `true` lets 'git-gc'
to run `git pack-refs`. Setting this to `false` tells
- `git-gc` never to run `git pack-refs`. The default setting is
+ 'git-gc' never to run `git pack-refs`. The default setting is
`notbare`. Enable it only when you know you do not have to
support such clients. The default setting will change to `true`
at some stage, and setting this to `false` will continue to
- prevent `git pack-refs` from being run from `git-gc`.
+ prevent `git pack-refs` from being run from 'git-gc'.
gc.pruneexpire::
- When `git-gc` is run, it will call `prune --expire 2.weeks.ago`.
+ When 'git-gc' is run, it will call 'prune --expire 2.weeks.ago'.
Override the grace period with this config variable.
gc.reflogexpire::
- `git-reflog expire` removes reflog entries older than
+ 'git-reflog expire' removes reflog entries older than
this time; defaults to 90 days.
gc.reflogexpireunreachable::
- `git-reflog expire` removes reflog entries older than
+ 'git-reflog expire' removes reflog entries older than
this time and are not reachable from the current tip;
defaults to 30 days.
gc.rerereresolved::
Records of conflicted merge you resolved earlier are
- kept for this many days when `git-rerere gc` is run.
+ kept for this many days when 'git-rerere gc' is run.
The default is 60 days. See linkgit:git-rerere[1].
gc.rerereunresolved::
Records of conflicted merge you have not resolved are
- kept for this many days when `git-rerere gc` is run.
+ kept for this many days when 'git-rerere gc' is run.
The default is 15 days. See linkgit:git-rerere[1].
+rerere.autoupdate::
+ When set to true, `git-rerere` updates the index with the
+ resulting contents after it cleanly resolves conflicts using
+ previously recorded resolution. Defaults to false.
+
rerere.enabled::
Activate recording of resolved conflicts, so that identical
conflict hunks can be resolved automatically, should they
files to determine the '-k' modes to use. If `crlf` is set,
the '-k' mode will be left blank, so cvs clients will
treat it as text. If `crlf` is explicitly unset, the file
- will be set with '-kb' mode, which supresses any newline munging
+ will be set with '-kb' mode, which suppresses any newline munging
the client might otherwise do. If `crlf` is not specified,
- then 'gitcvs.allbinary' is used. See linkgit:gitattribute[5].
+ then 'gitcvs.allbinary' is used. See linkgit:gitattributes[5].
gitcvs.allbinary::
This is used if 'gitcvs.usecrlfattr' does not resolve
i18n.logOutputEncoding::
Character encoding the commit messages are converted to when
- running `git-log` and friends.
+ running 'git-log' and friends.
instaweb.browser::
Specify the program that will be used to browse your working