This setting defaults to "refs/notes/commits", and can be overridden by
the `GIT_NOTES_REF` environment variable.
+core.sparseCheckout::
+ Enable "sparse checkout" feature. See section "Sparse checkout" in
+ linkgit:git-read-tree[1] for more information.
+
add.ignore-errors::
- Tells 'git-add' to continue adding files when some files cannot be
+ Tells 'git add' to continue adding files when some files cannot be
added due to indexing errors. Equivalent to the '--ignore-errors'
option of linkgit:git-add[1].
as the '--whitespace' option. See linkgit:git-apply[1].
branch.autosetupmerge::
- Tells 'git-branch' and 'git-checkout' to set up new branches
- Tells 'git branch' and 'git checkout' to setup new branches
++ Tells 'git branch' and 'git checkout' to set up 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`
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' commands such as 'git diff-files'.
diff.external::
If this config variable is set, diff generation is not
linkgit:git-whatchanged[1].
format.thread::
- The default threading style for 'git-format-patch'. Can be
+ The default threading style for 'git format-patch'. Can be
- either a boolean value, `shallow` or `deep`. `shallow`
- threading makes every mail a reply to the head of the series,
+ a boolean value, or `shallow` or `deep`. `shallow` threading
+ makes every mail a reply to the head of the series,
where the head is chosen from the cover letter, the
`\--in-reply-to`, and the first patch mail, in this order.
`deep` threading makes every mail a reply to the previous one.
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
- default so that older dumb-transport clients can still fetch
- 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
- `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'.
+ Running `git pack-refs` in a repository renders it
+ unclonable by Git versions prior to 1.5.1.2 over dumb
+ transports such as HTTP. This variable determines whether
- 'git gc' runs `git pack-refs`. This can be set to "nobare"
++ 'git gc' runs `git pack-refs`. This can be set to `nobare`
+ to enable it within all non-bare repos or it can be set to a
+ boolean value. The default is `true`.
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. The value
"now" may be used to disable this grace period and always prune
unreachable objects immediately.
you want to handle the lines that do *not* match the regex, just
prepend a single exclamation mark in front (see also <<EXAMPLES>>).
-The type specifier can be either '--int' or '--bool', which will make
+The type specifier can be either '--int' or '--bool', to make
- 'git-config' ensure that the variable(s) are of the given type and
+ 'git config' ensure that the variable(s) are of the given type and
convert the value to the canonical form (simple decimal number for int,
-a "true" or "false" string for bool). If no type specifier is passed,
-no checks or transformations are performed on the value.
+a "true" or "false" string for bool), or '--path', which does some
+path expansion (see '--path' below). If no type specifier is passed, no
+checks or transformations are performed on the value.
The file-option can be one of '--system', '--global' or '--file'
which specify where the values will be read from or written to.
by 1024, 1048576, or 1073741824 prior to output.
--bool-or-int::
- 'git-config' will ensure that the output matches the format of
+ 'git config' will ensure that the output matches the format of
either --bool or --int, as described above.
+--path::
+ 'git-config' will expand leading '{tilde}' to the value of
+ '$HOME', and '{tilde}user' to the home directory for the
+ specified user. This option has no effect when setting the
+ value (but you can use 'git config bla {tilde}/' from the
+ command line to let your shell do the expansion).
+
-z::
--null::
For all options that output values and/or keys, always
and the backwards-compatible dumb HTTP protocol, as well as clients
pushing using the smart HTTP protocol.
+It verifies that the directory has the magic file
+"git-daemon-export-ok", and it will refuse to export any git directory
+that hasn't explicitly been marked for export this way (unless the
+GIT_HTTP_EXPORT_ALL environmental variable is set).
+
By default, only the `upload-pack` service is enabled, which serves
- 'git-fetch-pack' and 'git-ls-remote' clients, which are invoked from
- 'git-fetch', 'git-pull', and 'git-clone'. If the client is authenticated,
- the `receive-pack` service is enabled, which serves 'git-send-pack'
- clients, which is invoked from 'git-push'.
+ 'git fetch-pack' and 'git ls-remote' clients, which are invoked from
+ 'git fetch', 'git pull', and 'git clone'. If the client is authenticated,
+ the `receive-pack` service is enabled, which serves 'git send-pack'
+ clients, which is invoked from 'git push'.
SERVICES
--------
--------
[verse]
'git merge' [-n] [--stat] [--no-commit] [--squash] [-s <strategy>]...
- [--[no-]rerere-autoupdate] [-m <msg>] <remote>...
- 'git merge' <msg> HEAD <remote>...
- [-m <msg>] <commit>...
++ [--[no-]rerere-autoupdate] [-m <msg>] <commit>...
+ 'git merge' <msg> HEAD <commit>...
DESCRIPTION
-----------
used to give a good default for automated 'git merge'
invocations.
- <remote>...::
- Other branch heads to merge into our branch. You need at
- least one <remote>. Specifying more than one <remote>
- obviously means you are trying an Octopus.
+--rerere-autoupdate::
+--no-rerere-autoupdate::
+ Allow the rerere mechanism to update the index with the
+ result of auto-conflict resolution if possible.
+
+ <commit>...::
+ Commits, usually other branch heads, to merge into our branch.
+ You need at least one <commit>. Specifying more than one
+ <commit> obviously means you are trying an Octopus.
include::merge-strategies.txt[]
command "pick" with the command "reword".
If you want to fold two or more commits into one, replace the command
-"pick" with "squash" for the second and subsequent commit. If the
-commits had different authors, it will attribute the squashed commit to
-the author of the first commit.
+"pick" for the second and subsequent commits with "squash" or "fixup".
+If the commits had different authors, the folded commit will be
+attributed to the author of the first commit. The suggested commit
+message for the folded commit is the concatenation of the commit
+messages of the first commit and of those with the "squash" command,
+but omits the commit messages of commits with the "fixup" command.
- 'git-rebase' will stop when "pick" has been replaced with "edit" or
+ 'git rebase' will stop when "pick" has been replaced with "edit" or
when a command fails due to merge errors. When you are done editing
and/or resolving conflicts you can continue with `git rebase --continue`.
Like '--refresh', but checks stat information unconditionally,
without regard to the "assume unchanged" setting.
+--skip-worktree::
+--no-skip-worktree::
+ When one of these flags is specified, the object name recorded
+ for the paths are not updated. Instead, these options
+ set and unset the "skip-worktree" bit for the paths. See
+ section "Skip-worktree bit" below for more information.
+
-g::
--again::
- Runs 'git-update-index' itself on the paths whose index
+ Runs 'git update-index' itself on the paths whose index
entries are different from those from the `HEAD` commit.
--unresolve::