Merge branch 'nd/config-split'
Split the overly large Documentation/config.txt file into million little pieces. This potentially allows each individual piece included into the manual page of the command it affects more easily. * nd/config-split: (81 commits) config.txt: remove config/dummy.txt config.txt: move worktree.* to a separate file config.txt: move web.* to a separate file config.txt: move versionsort.* to a separate file config.txt: move user.* to a separate file config.txt: move url.* to a separate file config.txt: move uploadpack.* to a separate file config.txt: move uploadarchive.* to a separate file config.txt: move transfer.* to a separate file config.txt: move tag.* to a separate file config.txt: move submodule.* to a separate file config.txt: move stash.* to a separate file config.txt: move status.* to a separate file config.txt: move splitIndex.* to a separate file config.txt: move showBranch.* to a separate file config.txt: move sequencer.* to a separate file config.txt: move sendemail-config.txt to config/ config.txt: move reset.* to a separate file config.txt: move rerere.* to a separate file config.txt: move repack.* to a separate file ...
This commit is contained in:
commit
fd7761a1cd
@ -285,7 +285,7 @@ docdep_prereqs = \
|
||||
mergetools-list.made $(mergetools_txt) \
|
||||
cmd-list.made $(cmds_txt)
|
||||
|
||||
doc.dep : $(docdep_prereqs) $(wildcard *.txt) build-docdep.perl
|
||||
doc.dep : $(docdep_prereqs) $(wildcard *.txt) $(wildcard config/*.txt) build-docdep.perl
|
||||
$(QUIET_GEN)$(RM) $@+ $@ && \
|
||||
$(PERL_PATH) ./build-docdep.perl >$@+ $(QUIET_STDERR) && \
|
||||
mv $@+ $@
|
||||
|
File diff suppressed because it is too large
Load Diff
7
Documentation/config/add.txt
Normal file
7
Documentation/config/add.txt
Normal file
@ -0,0 +1,7 @@
|
||||
add.ignoreErrors::
|
||||
add.ignore-errors (deprecated)::
|
||||
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]. `add.ignore-errors` is deprecated,
|
||||
as it does not follow the usual naming convention for configuration
|
||||
variables.
|
86
Documentation/config/advice.txt
Normal file
86
Documentation/config/advice.txt
Normal file
@ -0,0 +1,86 @@
|
||||
advice.*::
|
||||
These variables control various optional help messages designed to
|
||||
aid new users. All 'advice.*' variables default to 'true', and you
|
||||
can tell Git that you do not need help by setting these to 'false':
|
||||
+
|
||||
--
|
||||
pushUpdateRejected::
|
||||
Set this variable to 'false' if you want to disable
|
||||
'pushNonFFCurrent',
|
||||
'pushNonFFMatching', 'pushAlreadyExists',
|
||||
'pushFetchFirst', and 'pushNeedsForce'
|
||||
simultaneously.
|
||||
pushNonFFCurrent::
|
||||
Advice shown when linkgit:git-push[1] fails due to a
|
||||
non-fast-forward update to the current branch.
|
||||
pushNonFFMatching::
|
||||
Advice shown when you ran linkgit:git-push[1] and pushed
|
||||
'matching refs' explicitly (i.e. you used ':', or
|
||||
specified a refspec that isn't your current branch) and
|
||||
it resulted in a non-fast-forward error.
|
||||
pushAlreadyExists::
|
||||
Shown when linkgit:git-push[1] rejects an update that
|
||||
does not qualify for fast-forwarding (e.g., a tag.)
|
||||
pushFetchFirst::
|
||||
Shown when linkgit:git-push[1] rejects an update that
|
||||
tries to overwrite a remote ref that points at an
|
||||
object we do not have.
|
||||
pushNeedsForce::
|
||||
Shown when linkgit:git-push[1] rejects an update that
|
||||
tries to overwrite a remote ref that points at an
|
||||
object that is not a commit-ish, or make the remote
|
||||
ref point at an object that is not a commit-ish.
|
||||
statusHints::
|
||||
Show directions on how to proceed from the current
|
||||
state in the output of linkgit:git-status[1], in
|
||||
the template shown when writing commit messages in
|
||||
linkgit:git-commit[1], and in the help message shown
|
||||
by linkgit:git-checkout[1] when switching branch.
|
||||
statusUoption::
|
||||
Advise to consider using the `-u` option to linkgit:git-status[1]
|
||||
when the command takes more than 2 seconds to enumerate untracked
|
||||
files.
|
||||
commitBeforeMerge::
|
||||
Advice shown when linkgit:git-merge[1] refuses to
|
||||
merge to avoid overwriting local changes.
|
||||
resetQuiet::
|
||||
Advice to consider using the `--quiet` option to linkgit:git-reset[1]
|
||||
when the command takes more than 2 seconds to enumerate unstaged
|
||||
changes after reset.
|
||||
resolveConflict::
|
||||
Advice shown by various commands when conflicts
|
||||
prevent the operation from being performed.
|
||||
implicitIdentity::
|
||||
Advice on how to set your identity configuration when
|
||||
your information is guessed from the system username and
|
||||
domain name.
|
||||
detachedHead::
|
||||
Advice shown when you used linkgit:git-checkout[1] to
|
||||
move to the detach HEAD state, to instruct how to create
|
||||
a local branch after the fact.
|
||||
checkoutAmbiguousRemoteBranchName::
|
||||
Advice shown when the argument to
|
||||
linkgit:git-checkout[1] ambiguously resolves to a
|
||||
remote tracking branch on more than one remote in
|
||||
situations where an unambiguous argument would have
|
||||
otherwise caused a remote-tracking branch to be
|
||||
checked out. See the `checkout.defaultRemote`
|
||||
configuration variable for how to set a given remote
|
||||
to used by default in some situations where this
|
||||
advice would be printed.
|
||||
amWorkDir::
|
||||
Advice that shows the location of the patch file when
|
||||
linkgit:git-am[1] fails to apply it.
|
||||
rmHints::
|
||||
In case of failure in the output of linkgit:git-rm[1],
|
||||
show directions on how to proceed from the current state.
|
||||
addEmbeddedRepo::
|
||||
Advice on what to do when you've accidentally added one
|
||||
git repo inside of another.
|
||||
ignoredHook::
|
||||
Advice shown if a hook is ignored because the hook is not
|
||||
set as executable.
|
||||
waitingForEditor::
|
||||
Print a message to the terminal whenever Git is waiting for
|
||||
editor input from the user.
|
||||
--
|
18
Documentation/config/alias.txt
Normal file
18
Documentation/config/alias.txt
Normal file
@ -0,0 +1,18 @@
|
||||
alias.*::
|
||||
Command aliases for the linkgit:git[1] command wrapper - e.g.
|
||||
after defining "alias.last = cat-file commit HEAD", the invocation
|
||||
"git last" is equivalent to "git cat-file commit HEAD". To avoid
|
||||
confusion and troubles with script usage, aliases that
|
||||
hide existing Git commands are ignored. Arguments are split by
|
||||
spaces, the usual shell quoting and escaping is supported.
|
||||
A quote pair or a backslash can be used to quote them.
|
||||
+
|
||||
If the alias expansion is prefixed with an exclamation point,
|
||||
it will be treated as a shell command. For example, defining
|
||||
"alias.new = !gitk --all --not ORIG_HEAD", the invocation
|
||||
"git new" is equivalent to running the shell command
|
||||
"gitk --all --not ORIG_HEAD". Note that shell commands will be
|
||||
executed from the top-level directory of a repository, which may
|
||||
not necessarily be the current directory.
|
||||
`GIT_PREFIX` is set as returned by running 'git rev-parse --show-prefix'
|
||||
from the original current directory. See linkgit:git-rev-parse[1].
|
14
Documentation/config/am.txt
Normal file
14
Documentation/config/am.txt
Normal file
@ -0,0 +1,14 @@
|
||||
am.keepcr::
|
||||
If true, git-am will call git-mailsplit for patches in mbox format
|
||||
with parameter `--keep-cr`. In this case git-mailsplit will
|
||||
not remove `\r` from lines ending with `\r\n`. Can be overridden
|
||||
by giving `--no-keep-cr` from the command line.
|
||||
See linkgit:git-am[1], linkgit:git-mailsplit[1].
|
||||
|
||||
am.threeWay::
|
||||
By default, `git am` will fail if the patch does not apply cleanly. When
|
||||
set to true, this setting tells `git am` to fall back on 3-way merge if
|
||||
the patch records the identity of blobs it is supposed to apply to and
|
||||
we have those blobs available locally (equivalent to giving the `--3way`
|
||||
option from the command line). Defaults to `false`.
|
||||
See linkgit:git-am[1].
|
11
Documentation/config/apply.txt
Normal file
11
Documentation/config/apply.txt
Normal file
@ -0,0 +1,11 @@
|
||||
apply.ignoreWhitespace::
|
||||
When set to 'change', tells 'git apply' to ignore changes in
|
||||
whitespace, in the same way as the `--ignore-space-change`
|
||||
option.
|
||||
When set to one of: no, none, never, false tells 'git apply' to
|
||||
respect all whitespace differences.
|
||||
See linkgit:git-apply[1].
|
||||
|
||||
apply.whitespace::
|
||||
Tells 'git apply' how to handle whitespaces, in the same way
|
||||
as the `--whitespace` option. See linkgit:git-apply[1].
|
21
Documentation/config/blame.txt
Normal file
21
Documentation/config/blame.txt
Normal file
@ -0,0 +1,21 @@
|
||||
blame.blankBoundary::
|
||||
Show blank commit object name for boundary commits in
|
||||
linkgit:git-blame[1]. This option defaults to false.
|
||||
|
||||
blame.coloring::
|
||||
This determines the coloring scheme to be applied to blame
|
||||
output. It can be 'repeatedLines', 'highlightRecent',
|
||||
or 'none' which is the default.
|
||||
|
||||
blame.date::
|
||||
Specifies the format used to output dates in linkgit:git-blame[1].
|
||||
If unset the iso format is used. For supported values,
|
||||
see the discussion of the `--date` option at linkgit:git-log[1].
|
||||
|
||||
blame.showEmail::
|
||||
Show the author email instead of author name in linkgit:git-blame[1].
|
||||
This option defaults to false.
|
||||
|
||||
blame.showRoot::
|
||||
Do not treat root commits as boundaries in linkgit:git-blame[1].
|
||||
This option defaults to false.
|
102
Documentation/config/branch.txt
Normal file
102
Documentation/config/branch.txt
Normal file
@ -0,0 +1,102 @@
|
||||
branch.autoSetupMerge::
|
||||
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`
|
||||
and `--no-track` options. The valid settings are: `false` -- no
|
||||
automatic setup is done; `true` -- automatic setup is done when the
|
||||
starting point is a remote-tracking branch; `always` --
|
||||
automatic setup is done when the starting point is either a
|
||||
local branch or remote-tracking
|
||||
branch. This option defaults to true.
|
||||
|
||||
branch.autoSetupRebase::
|
||||
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.
|
||||
When `local`, rebase is set to true for tracked branches of
|
||||
other local branches.
|
||||
When `remote`, rebase is set to true for tracked branches of
|
||||
remote-tracking branches.
|
||||
When `always`, rebase will be set to true for all tracking
|
||||
branches.
|
||||
See "branch.autoSetupMerge" for details on how to set up a
|
||||
branch to track another branch.
|
||||
This option defaults to never.
|
||||
|
||||
branch.sort::
|
||||
This variable controls the sort ordering of branches when displayed by
|
||||
linkgit:git-branch[1]. Without the "--sort=<value>" option provided, the
|
||||
value of this variable will be used as the default.
|
||||
See linkgit:git-for-each-ref[1] field names for valid values.
|
||||
|
||||
branch.<name>.remote::
|
||||
When on branch <name>, it tells 'git fetch' and 'git push'
|
||||
which remote to fetch from/push to. The remote to push to
|
||||
may be overridden with `remote.pushDefault` (for all branches).
|
||||
The remote to push to, for the current branch, may be further
|
||||
overridden by `branch.<name>.pushRemote`. If no remote is
|
||||
configured, or if you are not on any branch, it defaults to
|
||||
`origin` for fetching and `remote.pushDefault` for pushing.
|
||||
Additionally, `.` (a period) is the current local repository
|
||||
(a dot-repository), see `branch.<name>.merge`'s final note below.
|
||||
|
||||
branch.<name>.pushRemote::
|
||||
When on branch <name>, it overrides `branch.<name>.remote` for
|
||||
pushing. It also overrides `remote.pushDefault` for pushing
|
||||
from branch <name>. When you pull from one place (e.g. your
|
||||
upstream) and push to another place (e.g. your own publishing
|
||||
repository), you would want to set `remote.pushDefault` to
|
||||
specify the remote to push to for all branches, and use this
|
||||
option to override it for a specific branch.
|
||||
|
||||
branch.<name>.merge::
|
||||
Defines, together with branch.<name>.remote, the upstream branch
|
||||
for the given branch. It tells 'git fetch'/'git pull'/'git rebase' which
|
||||
branch to merge and can also affect 'git push' (see push.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.
|
||||
Specify multiple values to get an octopus merge.
|
||||
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 relative path
|
||||
setting `.` (a period) for branch.<name>.remote.
|
||||
|
||||
branch.<name>.mergeOptions::
|
||||
Sets default options for merging into branch <name>. The syntax and
|
||||
supported options are the same as those of linkgit:git-merge[1], but
|
||||
option values containing whitespace characters are currently not
|
||||
supported.
|
||||
|
||||
branch.<name>.rebase::
|
||||
When true, rebase the branch <name> on top of the fetched branch,
|
||||
instead of merging the default branch from the default remote when
|
||||
"git pull" is run. See "pull.rebase" for doing this in a non
|
||||
branch-specific manner.
|
||||
+
|
||||
When `merges`, pass the `--rebase-merges` option to 'git rebase'
|
||||
so that the local merge commits are included in the rebase (see
|
||||
linkgit:git-rebase[1] for details).
|
||||
+
|
||||
When preserve, also pass `--preserve-merges` along to 'git rebase'
|
||||
so that locally committed merge commits will not be flattened
|
||||
by running 'git pull'.
|
||||
+
|
||||
When the value is `interactive`, the rebase is run in interactive mode.
|
||||
+
|
||||
*NOTE*: this is a possibly dangerous operation; do *not* use
|
||||
it unless you understand the implications (see linkgit:git-rebase[1]
|
||||
for details).
|
||||
|
||||
branch.<name>.description::
|
||||
Branch description, can be edited with
|
||||
`git branch --edit-description`. Branch description is
|
||||
automatically added in the format-patch cover letter or
|
||||
request-pull summary.
|
9
Documentation/config/browser.txt
Normal file
9
Documentation/config/browser.txt
Normal file
@ -0,0 +1,9 @@
|
||||
browser.<tool>.cmd::
|
||||
Specify the command to invoke the specified browser. The
|
||||
specified command is evaluated in shell with the URLs passed
|
||||
as arguments. (See linkgit:git-web{litdd}browse[1].)
|
||||
|
||||
browser.<tool>.path::
|
||||
Override the path for the given tool that may be used to
|
||||
browse HTML help (see `-w` option in linkgit:git-help[1]) or a
|
||||
working repository in gitweb (see linkgit:git-instaweb[1]).
|
23
Documentation/config/checkout.txt
Normal file
23
Documentation/config/checkout.txt
Normal file
@ -0,0 +1,23 @@
|
||||
checkout.defaultRemote::
|
||||
When you run 'git checkout <something>' and only have one
|
||||
remote, it may implicitly fall back on checking out and
|
||||
tracking e.g. 'origin/<something>'. This stops working as soon
|
||||
as you have more than one remote with a '<something>'
|
||||
reference. This setting allows for setting the name of a
|
||||
preferred remote that should always win when it comes to
|
||||
disambiguation. The typical use-case is to set this to
|
||||
`origin`.
|
||||
+
|
||||
Currently this is used by linkgit:git-checkout[1] when 'git checkout
|
||||
<something>' will checkout the '<something>' branch on another remote,
|
||||
and by linkgit:git-worktree[1] when 'git worktree add' refers to a
|
||||
remote branch. This setting might be used for other checkout-like
|
||||
commands or functionality in the future.
|
||||
|
||||
checkout.optimizeNewBranch::
|
||||
Optimizes the performance of "git checkout -b <new_branch>" when
|
||||
using sparse-checkout. When set to true, git will not update the
|
||||
repo based on the current sparse-checkout settings. This means it
|
||||
will not update the skip-worktree bit in the index nor add/remove
|
||||
files in the working directory to reflect the current sparse checkout
|
||||
settings nor will it show the local changes.
|
3
Documentation/config/clean.txt
Normal file
3
Documentation/config/clean.txt
Normal file
@ -0,0 +1,3 @@
|
||||
clean.requireForce::
|
||||
A boolean to make git-clean do nothing unless given -f,
|
||||
-i or -n. Defaults to true.
|
201
Documentation/config/color.txt
Normal file
201
Documentation/config/color.txt
Normal file
@ -0,0 +1,201 @@
|
||||
color.advice::
|
||||
A boolean to enable/disable color in hints (e.g. when a push
|
||||
failed, see `advice.*` for a list). May be set to `always`,
|
||||
`false` (or `never`) or `auto` (or `true`), in which case colors
|
||||
are used only when the error output goes to a terminal. If
|
||||
unset, then the value of `color.ui` is used (`auto` by default).
|
||||
|
||||
color.advice.hint::
|
||||
Use customized color for hints.
|
||||
|
||||
color.blame.highlightRecent::
|
||||
This can be used to color the metadata of a blame line depending
|
||||
on age of the line.
|
||||
+
|
||||
This setting should be set to a comma-separated list of color and date settings,
|
||||
starting and ending with a color, the dates should be set from oldest to newest.
|
||||
The metadata will be colored given the colors if the the line was introduced
|
||||
before the given timestamp, overwriting older timestamped colors.
|
||||
+
|
||||
Instead of an absolute timestamp relative timestamps work as well, e.g.
|
||||
2.weeks.ago is valid to address anything older than 2 weeks.
|
||||
+
|
||||
It defaults to 'blue,12 month ago,white,1 month ago,red', which colors
|
||||
everything older than one year blue, recent changes between one month and
|
||||
one year old are kept white, and lines introduced within the last month are
|
||||
colored red.
|
||||
|
||||
color.blame.repeatedLines::
|
||||
Use the customized color for the part of git-blame output that
|
||||
is repeated meta information per line (such as commit id,
|
||||
author name, date and timezone). Defaults to cyan.
|
||||
|
||||
color.branch::
|
||||
A boolean to enable/disable color in the output of
|
||||
linkgit:git-branch[1]. May be set to `always`,
|
||||
`false` (or `never`) or `auto` (or `true`), in which case colors are used
|
||||
only when the output is to a terminal. If unset, then the
|
||||
value of `color.ui` is used (`auto` by default).
|
||||
|
||||
color.branch.<slot>::
|
||||
Use customized color for branch coloration. `<slot>` is one of
|
||||
`current` (the current branch), `local` (a local branch),
|
||||
`remote` (a remote-tracking branch in refs/remotes/),
|
||||
`upstream` (upstream tracking branch), `plain` (other
|
||||
refs).
|
||||
|
||||
color.diff::
|
||||
Whether to use ANSI escape sequences to add color to patches.
|
||||
If this is set to `always`, linkgit:git-diff[1],
|
||||
linkgit:git-log[1], and linkgit:git-show[1] will use color
|
||||
for all patches. If it is set to `true` or `auto`, those
|
||||
commands will only use color when output is to the terminal.
|
||||
If unset, then the value of `color.ui` is used (`auto` by
|
||||
default).
|
||||
+
|
||||
This does not affect linkgit:git-format-patch[1] or the
|
||||
'git-diff-{asterisk}' plumbing commands. Can be overridden on the
|
||||
command line with the `--color[=<when>]` option.
|
||||
|
||||
color.diff.<slot>::
|
||||
Use customized color for diff colorization. `<slot>` specifies
|
||||
which part of the patch to use the specified color, and is one
|
||||
of `context` (context text - `plain` is a historical synonym),
|
||||
`meta` (metainformation), `frag`
|
||||
(hunk header), 'func' (function in hunk header), `old` (removed lines),
|
||||
`new` (added lines), `commit` (commit headers), `whitespace`
|
||||
(highlighting whitespace errors), `oldMoved` (deleted lines),
|
||||
`newMoved` (added lines), `oldMovedDimmed`, `oldMovedAlternative`,
|
||||
`oldMovedAlternativeDimmed`, `newMovedDimmed`, `newMovedAlternative`
|
||||
`newMovedAlternativeDimmed` (See the '<mode>'
|
||||
setting of '--color-moved' in linkgit:git-diff[1] for details),
|
||||
`contextDimmed`, `oldDimmed`, `newDimmed`, `contextBold`,
|
||||
`oldBold`, and `newBold` (see linkgit:git-range-diff[1] for details).
|
||||
|
||||
color.decorate.<slot>::
|
||||
Use customized color for 'git log --decorate' output. `<slot>` is one
|
||||
of `branch`, `remoteBranch`, `tag`, `stash` or `HEAD` for local
|
||||
branches, remote-tracking branches, tags, stash and HEAD, respectively
|
||||
and `grafted` for grafted commits.
|
||||
|
||||
color.grep::
|
||||
When set to `always`, always highlight matches. When `false` (or
|
||||
`never`), never. When set to `true` or `auto`, use color only
|
||||
when the output is written to the terminal. If unset, then the
|
||||
value of `color.ui` is used (`auto` by default).
|
||||
|
||||
color.grep.<slot>::
|
||||
Use customized color for grep colorization. `<slot>` specifies which
|
||||
part of the line to use the specified color, and is one of
|
||||
+
|
||||
--
|
||||
`context`;;
|
||||
non-matching text in context lines (when using `-A`, `-B`, or `-C`)
|
||||
`filename`;;
|
||||
filename prefix (when not using `-h`)
|
||||
`function`;;
|
||||
function name lines (when using `-p`)
|
||||
`lineNumber`;;
|
||||
line number prefix (when using `-n`)
|
||||
`column`;;
|
||||
column number prefix (when using `--column`)
|
||||
`match`;;
|
||||
matching text (same as setting `matchContext` and `matchSelected`)
|
||||
`matchContext`;;
|
||||
matching text in context lines
|
||||
`matchSelected`;;
|
||||
matching text in selected lines
|
||||
`selected`;;
|
||||
non-matching text in selected lines
|
||||
`separator`;;
|
||||
separators between fields on a line (`:`, `-`, and `=`)
|
||||
and between hunks (`--`)
|
||||
--
|
||||
|
||||
color.interactive::
|
||||
When set to `always`, always use colors for interactive prompts
|
||||
and displays (such as those used by "git-add --interactive" and
|
||||
"git-clean --interactive"). When false (or `never`), never.
|
||||
When set to `true` or `auto`, use colors only when the output is
|
||||
to the terminal. If unset, then the value of `color.ui` is
|
||||
used (`auto` by default).
|
||||
|
||||
color.interactive.<slot>::
|
||||
Use customized color for 'git add --interactive' and 'git clean
|
||||
--interactive' output. `<slot>` may be `prompt`, `header`, `help`
|
||||
or `error`, for four distinct types of normal output from
|
||||
interactive commands.
|
||||
|
||||
color.pager::
|
||||
A boolean to enable/disable colored output when the pager is in
|
||||
use (default is true).
|
||||
|
||||
color.push::
|
||||
A boolean to enable/disable color in push errors. May be set to
|
||||
`always`, `false` (or `never`) or `auto` (or `true`), in which
|
||||
case colors are used only when the error output goes to a terminal.
|
||||
If unset, then the value of `color.ui` is used (`auto` by default).
|
||||
|
||||
color.push.error::
|
||||
Use customized color for push errors.
|
||||
|
||||
color.remote::
|
||||
If set, keywords at the start of the line are highlighted. The
|
||||
keywords are "error", "warning", "hint" and "success", and are
|
||||
matched case-insensitively. May be set to `always`, `false` (or
|
||||
`never`) or `auto` (or `true`). If unset, then the value of
|
||||
`color.ui` is used (`auto` by default).
|
||||
|
||||
color.remote.<slot>::
|
||||
Use customized color for each remote keyword. `<slot>` may be
|
||||
`hint`, `warning`, `success` or `error` which match the
|
||||
corresponding keyword.
|
||||
|
||||
color.showBranch::
|
||||
A boolean to enable/disable color in the output of
|
||||
linkgit:git-show-branch[1]. May be set to `always`,
|
||||
`false` (or `never`) or `auto` (or `true`), in which case colors are used
|
||||
only when the output is to a terminal. If unset, then the
|
||||
value of `color.ui` is used (`auto` by default).
|
||||
|
||||
color.status::
|
||||
A boolean to enable/disable color in the output of
|
||||
linkgit:git-status[1]. May be set to `always`,
|
||||
`false` (or `never`) or `auto` (or `true`), in which case colors are used
|
||||
only when the output is to a terminal. If unset, then the
|
||||
value of `color.ui` is used (`auto` by default).
|
||||
|
||||
color.status.<slot>::
|
||||
Use customized color for status colorization. `<slot>` is
|
||||
one of `header` (the header text of the status message),
|
||||
`added` or `updated` (files which are added but not committed),
|
||||
`changed` (files which are changed but not added in the index),
|
||||
`untracked` (files which are not tracked by Git),
|
||||
`branch` (the current branch),
|
||||
`nobranch` (the color the 'no branch' warning is shown in, defaulting
|
||||
to red),
|
||||
`localBranch` or `remoteBranch` (the local and remote branch names,
|
||||
respectively, when branch and tracking information is displayed in the
|
||||
status short-format), or
|
||||
`unmerged` (files which have unmerged changes).
|
||||
|
||||
color.transport::
|
||||
A boolean to enable/disable color when pushes are rejected. May be
|
||||
set to `always`, `false` (or `never`) or `auto` (or `true`), in which
|
||||
case colors are used only when the error output goes to a terminal.
|
||||
If unset, then the value of `color.ui` is used (`auto` by default).
|
||||
|
||||
color.transport.rejected::
|
||||
Use customized color when a push was rejected.
|
||||
|
||||
color.ui::
|
||||
This variable determines the default value for variables such
|
||||
as `color.diff` and `color.grep` that control the use of color
|
||||
per command family. Its scope will expand as more commands learn
|
||||
configuration to set a default for the `--color` option. Set it
|
||||
to `false` or `never` if you prefer Git commands not to use
|
||||
color unless enabled explicitly with some other configuration
|
||||
or the `--color` option. Set it to `always` if you want all
|
||||
output not intended for machine consumption to use color, to
|
||||
`true` or `auto` (this is the default since Git 1.8.4) if you
|
||||
want such output to use color when written to the terminal.
|
55
Documentation/config/column.txt
Normal file
55
Documentation/config/column.txt
Normal file
@ -0,0 +1,55 @@
|
||||
column.ui::
|
||||
Specify whether supported commands should output in columns.
|
||||
This variable consists of a list of tokens separated by spaces
|
||||
or commas:
|
||||
+
|
||||
These options control when the feature should be enabled
|
||||
(defaults to 'never'):
|
||||
+
|
||||
--
|
||||
`always`;;
|
||||
always show in columns
|
||||
`never`;;
|
||||
never show in columns
|
||||
`auto`;;
|
||||
show in columns if the output is to the terminal
|
||||
--
|
||||
+
|
||||
These options control layout (defaults to 'column'). Setting any
|
||||
of these implies 'always' if none of 'always', 'never', or 'auto' are
|
||||
specified.
|
||||
+
|
||||
--
|
||||
`column`;;
|
||||
fill columns before rows
|
||||
`row`;;
|
||||
fill rows before columns
|
||||
`plain`;;
|
||||
show in one column
|
||||
--
|
||||
+
|
||||
Finally, these options can be combined with a layout option (defaults
|
||||
to 'nodense'):
|
||||
+
|
||||
--
|
||||
`dense`;;
|
||||
make unequal size columns to utilize more space
|
||||
`nodense`;;
|
||||
make equal size columns
|
||||
--
|
||||
|
||||
column.branch::
|
||||
Specify whether to output branch listing in `git branch` in columns.
|
||||
See `column.ui` for details.
|
||||
|
||||
column.clean::
|
||||
Specify the layout when list items in `git clean -i`, which always
|
||||
shows files and directories in columns. See `column.ui` for details.
|
||||
|
||||
column.status::
|
||||
Specify whether to output untracked files in `git status` in columns.
|
||||
See `column.ui` for details.
|
||||
|
||||
column.tag::
|
||||
Specify whether to output tag listing in `git tag` in columns.
|
||||
See `column.ui` for details.
|
29
Documentation/config/commit.txt
Normal file
29
Documentation/config/commit.txt
Normal file
@ -0,0 +1,29 @@
|
||||
commit.cleanup::
|
||||
This setting overrides the default of the `--cleanup` option in
|
||||
`git commit`. See linkgit:git-commit[1] for details. Changing the
|
||||
default can be useful when you always want to keep lines that begin
|
||||
with comment character `#` in your log message, in which case you
|
||||
would do `git config commit.cleanup whitespace` (note that you will
|
||||
have to remove the help lines that begin with `#` in the commit log
|
||||
template yourself, if you do this).
|
||||
|
||||
commit.gpgSign::
|
||||
|
||||
A boolean to specify whether all commits should be GPG signed.
|
||||
Use of this option when doing operations such as rebase can
|
||||
result in a large number of commits being signed. It may be
|
||||
convenient to use an agent to avoid typing your GPG passphrase
|
||||
several times.
|
||||
|
||||
commit.status::
|
||||
A boolean to enable/disable inclusion of status information in the
|
||||
commit message template when using an editor to prepare the commit
|
||||
message. Defaults to true.
|
||||
|
||||
commit.template::
|
||||
Specify the pathname of a file to use as the template for
|
||||
new commit messages.
|
||||
|
||||
commit.verbose::
|
||||
A boolean or int to specify the level of verbose with `git commit`.
|
||||
See linkgit:git-commit[1].
|
7
Documentation/config/completion.txt
Normal file
7
Documentation/config/completion.txt
Normal file
@ -0,0 +1,7 @@
|
||||
completion.commands::
|
||||
This is only used by git-completion.bash to add or remove
|
||||
commands from the list of completed commands. Normally only
|
||||
porcelain commands and a few select others are completed. You
|
||||
can add more commands, separated by space, in this
|
||||
variable. Prefixing the command with '-' will remove it from
|
||||
the existing list.
|
594
Documentation/config/core.txt
Normal file
594
Documentation/config/core.txt
Normal file
@ -0,0 +1,594 @@
|
||||
core.fileMode::
|
||||
Tells Git if the executable bit of files in the working tree
|
||||
is to be honored.
|
||||
+
|
||||
Some filesystems lose the executable bit when a file that is
|
||||
marked as executable is checked out, or checks out a
|
||||
non-executable file with executable bit on.
|
||||
linkgit:git-clone[1] or linkgit:git-init[1] probe the filesystem
|
||||
to see if it handles the executable bit correctly
|
||||
and this variable is automatically set as necessary.
|
||||
+
|
||||
A repository, however, may be on a filesystem that handles
|
||||
the filemode correctly, and this variable is set to 'true'
|
||||
when created, but later may be made accessible from another
|
||||
environment that loses the filemode (e.g. exporting ext4 via
|
||||
CIFS mount, visiting a Cygwin created repository with
|
||||
Git for Windows or Eclipse).
|
||||
In such a case it may be necessary to set this variable to 'false'.
|
||||
See linkgit:git-update-index[1].
|
||||
+
|
||||
The default is true (when core.filemode is not specified in the config file).
|
||||
|
||||
core.hideDotFiles::
|
||||
(Windows-only) If true, mark newly-created directories and files whose
|
||||
name starts with a dot as hidden. If 'dotGitOnly', only the `.git/`
|
||||
directory is hidden, but no other files starting with a dot. The
|
||||
default mode is 'dotGitOnly'.
|
||||
|
||||
core.ignoreCase::
|
||||
Internal variable which enables various workarounds to enable
|
||||
Git to work better on filesystems that are not case sensitive,
|
||||
like APFS, HFS+, FAT, NTFS, etc. For example, if a directory listing
|
||||
finds "makefile" when Git expects "Makefile", Git will assume
|
||||
it is really the same file, and continue to remember it as
|
||||
"Makefile".
|
||||
+
|
||||
The default is false, except linkgit:git-clone[1] or linkgit:git-init[1]
|
||||
will probe and set core.ignoreCase true if appropriate when the repository
|
||||
is created.
|
||||
+
|
||||
Git relies on the proper configuration of this variable for your operating
|
||||
and file system. Modifying this value may result in unexpected behavior.
|
||||
|
||||
core.precomposeUnicode::
|
||||
This option is only used by Mac OS implementation of Git.
|
||||
When core.precomposeUnicode=true, Git reverts the unicode decomposition
|
||||
of filenames done by Mac OS. This is useful when sharing a repository
|
||||
between Mac OS and Linux or Windows.
|
||||
(Git for Windows 1.7.10 or higher is needed, or Git under cygwin 1.7).
|
||||
When false, file names are handled fully transparent by Git,
|
||||
which is backward compatible with older versions of Git.
|
||||
|
||||
core.protectHFS::
|
||||
If set to true, do not allow checkout of paths that would
|
||||
be considered equivalent to `.git` on an HFS+ filesystem.
|
||||
Defaults to `true` on Mac OS, and `false` elsewhere.
|
||||
|
||||
core.protectNTFS::
|
||||
If set to true, do not allow checkout of paths that would
|
||||
cause problems with the NTFS filesystem, e.g. conflict with
|
||||
8.3 "short" names.
|
||||
Defaults to `true` on Windows, and `false` elsewhere.
|
||||
|
||||
core.fsmonitor::
|
||||
If set, the value of this variable is used as a command which
|
||||
will identify all files that may have changed since the
|
||||
requested date/time. This information is used to speed up git by
|
||||
avoiding unnecessary processing of files that have not changed.
|
||||
See the "fsmonitor-watchman" section of linkgit:githooks[5].
|
||||
|
||||
core.trustctime::
|
||||
If false, the ctime differences between the index and the
|
||||
working tree 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.splitIndex::
|
||||
If true, the split-index feature of the index will be used.
|
||||
See linkgit:git-update-index[1]. False by default.
|
||||
|
||||
core.untrackedCache::
|
||||
Determines what to do about the untracked cache feature of the
|
||||
index. It will be kept, if this variable is unset or set to
|
||||
`keep`. It will automatically be added if set to `true`. And
|
||||
it will automatically be removed, if set to `false`. Before
|
||||
setting it to `true`, you should check that mtime is working
|
||||
properly on your system.
|
||||
See linkgit:git-update-index[1]. `keep` by default.
|
||||
|
||||
core.checkStat::
|
||||
When missing or is set to `default`, many fields in the stat
|
||||
structure are checked to detect if a file has been modified
|
||||
since Git looked at it. When this configuration variable is
|
||||
set to `minimal`, sub-second part of mtime and ctime, the
|
||||
uid and gid of the owner of the file, the inode number (and
|
||||
the device number, if Git was compiled to use it), are
|
||||
excluded from the check among these fields, leaving only the
|
||||
whole-second part of mtime (and ctime, if `core.trustCtime`
|
||||
is set) and the filesize to be checked.
|
||||
+
|
||||
There are implementations of Git that do not leave usable values in
|
||||
some fields (e.g. JGit); by excluding these fields from the
|
||||
comparison, the `minimal` mode may help interoperability when the
|
||||
same repository is used by these other systems at the same time.
|
||||
|
||||
core.quotePath::
|
||||
Commands that output paths (e.g. 'ls-files', 'diff'), will
|
||||
quote "unusual" characters in the pathname by enclosing the
|
||||
pathname in double-quotes and escaping those characters with
|
||||
backslashes in the same way C escapes control characters (e.g.
|
||||
`\t` for TAB, `\n` for LF, `\\` for backslash) or bytes with
|
||||
values larger than 0x80 (e.g. octal `\302\265` for "micro" in
|
||||
UTF-8). If this variable is set to false, bytes higher than
|
||||
0x80 are not considered "unusual" any more. Double-quotes,
|
||||
backslash and control characters are always escaped regardless
|
||||
of the setting of this variable. A simple space character is
|
||||
not considered "unusual". Many commands can output pathnames
|
||||
completely verbatim using the `-z` option. The default value
|
||||
is true.
|
||||
|
||||
core.eol::
|
||||
Sets the line ending type to use in the working directory for
|
||||
files that have the `text` property set when core.autocrlf is false.
|
||||
Alternatives are 'lf', 'crlf' and 'native', which uses the platform's
|
||||
native line ending. The default value is `native`. See
|
||||
linkgit:gitattributes[5] for more information on end-of-line
|
||||
conversion.
|
||||
|
||||
core.safecrlf::
|
||||
If true, makes Git check if converting `CRLF` is reversible when
|
||||
end-of-line conversion is active. Git will verify if a command
|
||||
modifies a file in the work tree either directly or indirectly.
|
||||
For example, committing a file followed by checking out the
|
||||
same file should yield the original file in the work tree. If
|
||||
this is not the case for the current setting of
|
||||
`core.autocrlf`, Git will reject the file. The variable can
|
||||
be set to "warn", in which case Git will only warn about an
|
||||
irreversible conversion but continue the operation.
|
||||
+
|
||||
CRLF conversion bears a slight chance of corrupting data.
|
||||
When it is enabled, Git will convert CRLF to LF during commit and LF to
|
||||
CRLF during checkout. A file that contains a mixture of LF and
|
||||
CRLF before the commit cannot be recreated by Git. For text
|
||||
files this is the right thing to do: it corrects line endings
|
||||
such that we have only LF line endings in the repository.
|
||||
But for binary files that are accidentally classified as text the
|
||||
conversion can corrupt data.
|
||||
+
|
||||
If you recognize such corruption early you can easily fix it by
|
||||
setting the conversion type explicitly in .gitattributes. Right
|
||||
after committing you still have the original file in your work
|
||||
tree and this file is not yet corrupted. You can explicitly tell
|
||||
Git that this file is binary and Git will handle the file
|
||||
appropriately.
|
||||
+
|
||||
Unfortunately, the desired effect of cleaning up text files with
|
||||
mixed line endings and the undesired effect of corrupting binary
|
||||
files cannot be distinguished. In both cases CRLFs are removed
|
||||
in an irreversible way. For text files this is the right thing
|
||||
to do because CRLFs are line endings, while for binary files
|
||||
converting CRLFs corrupts data.
|
||||
+
|
||||
Note, this safety check does not mean that a checkout will generate a
|
||||
file identical to the original file for a different setting of
|
||||
`core.eol` and `core.autocrlf`, but only for the current one. For
|
||||
example, a text file with `LF` would be accepted with `core.eol=lf`
|
||||
and could later be checked out with `core.eol=crlf`, in which case the
|
||||
resulting file would contain `CRLF`, although the original file
|
||||
contained `LF`. However, in both work trees the line endings would be
|
||||
consistent, that is either all `LF` or all `CRLF`, but never mixed. A
|
||||
file with mixed line endings would be reported by the `core.safecrlf`
|
||||
mechanism.
|
||||
|
||||
core.autocrlf::
|
||||
Setting this variable to "true" is the same as setting
|
||||
the `text` attribute to "auto" on all files and core.eol to "crlf".
|
||||
Set to true if you want to have `CRLF` line endings in your
|
||||
working directory and the repository has LF line endings.
|
||||
This variable can be set to 'input',
|
||||
in which case no output conversion is performed.
|
||||
|
||||
core.checkRoundtripEncoding::
|
||||
A comma and/or whitespace separated list of encodings that Git
|
||||
performs UTF-8 round trip checks on if they are used in an
|
||||
`working-tree-encoding` attribute (see linkgit:gitattributes[5]).
|
||||
The default value is `SHIFT-JIS`.
|
||||
|
||||
core.symlinks::
|
||||
If false, symbolic links are checked out as small plain files that
|
||||
contain the link text. linkgit:git-update-index[1] and
|
||||
linkgit:git-add[1] will not change the recorded type to regular
|
||||
file. Useful on filesystems like FAT that do not support
|
||||
symbolic links.
|
||||
+
|
||||
The default is true, except linkgit:git-clone[1] or linkgit:git-init[1]
|
||||
will probe and set core.symlinks false if appropriate when the repository
|
||||
is created.
|
||||
|
||||
core.gitProxy::
|
||||
A "proxy command" to execute (as 'command host port') instead
|
||||
of establishing direct connection to the remote server when
|
||||
using the Git protocol for fetching. If the variable value is
|
||||
in the "COMMAND for DOMAIN" format, the command is applied only
|
||||
on hostnames ending with the specified domain string. This variable
|
||||
may be set multiple times and is matched in the given order;
|
||||
the first match wins.
|
||||
+
|
||||
Can be overridden by the `GIT_PROXY_COMMAND` environment variable
|
||||
(which always applies universally, without the special "for"
|
||||
handling).
|
||||
+
|
||||
The special string `none` can be used as the proxy command to
|
||||
specify that no proxy be used for a given domain pattern.
|
||||
This is useful for excluding servers inside a firewall from
|
||||
proxy use, while defaulting to a common proxy for external domains.
|
||||
|
||||
core.sshCommand::
|
||||
If this variable is set, `git fetch` and `git push` will
|
||||
use the specified command instead of `ssh` when they need to
|
||||
connect to a remote system. The command is in the same form as
|
||||
the `GIT_SSH_COMMAND` environment variable and is overridden
|
||||
when the environment variable is set.
|
||||
|
||||
core.ignoreStat::
|
||||
If true, Git will avoid using lstat() calls to detect if files have
|
||||
changed by setting the "assume-unchanged" bit for those tracked files
|
||||
which it has updated identically in both the index and working tree.
|
||||
+
|
||||
When files are modified outside of Git, the user will need to stage
|
||||
the modified files explicitly (e.g. see 'Examples' section in
|
||||
linkgit:git-update-index[1]).
|
||||
Git will not normally detect changes to those files.
|
||||
+
|
||||
This is useful on systems where lstat() calls are very slow, such as
|
||||
CIFS/Microsoft Windows.
|
||||
+
|
||||
False by default.
|
||||
|
||||
core.preferSymlinkRefs::
|
||||
Instead of the default "symref" format for HEAD
|
||||
and other symbolic reference files, use symbolic links.
|
||||
This is sometimes needed to work with old scripts that
|
||||
expect HEAD to be a symbolic link.
|
||||
|
||||
core.alternateRefsCommand::
|
||||
When advertising tips of available history from an alternate, use the shell to
|
||||
execute the specified command instead of linkgit:git-for-each-ref[1]. The
|
||||
first argument is the absolute path of the alternate. Output must contain one
|
||||
hex object id per line (i.e., the same as produced by `git for-each-ref
|
||||
--format='%(objectname)'`).
|
||||
+
|
||||
Note that you cannot generally put `git for-each-ref` directly into the config
|
||||
value, as it does not take a repository path as an argument (but you can wrap
|
||||
the command above in a shell script).
|
||||
|
||||
core.alternateRefsPrefixes::
|
||||
When listing references from an alternate, list only references that begin
|
||||
with the given prefix. Prefixes match as if they were given as arguments to
|
||||
linkgit:git-for-each-ref[1]. To list multiple prefixes, separate them with
|
||||
whitespace. If `core.alternateRefsCommand` is set, setting
|
||||
`core.alternateRefsPrefixes` has no effect.
|
||||
|
||||
core.bare::
|
||||
If true this repository is assumed to be 'bare' and has no
|
||||
working directory associated with it. If this is the case a
|
||||
number of commands that require a working directory will be
|
||||
disabled, such as linkgit:git-add[1] or linkgit:git-merge[1].
|
||||
+
|
||||
This setting is automatically guessed by linkgit:git-clone[1] or
|
||||
linkgit:git-init[1] when the repository was created. By default a
|
||||
repository that ends in "/.git" is assumed to be not bare (bare =
|
||||
false), while all other repositories are assumed to be bare (bare
|
||||
= true).
|
||||
|
||||
core.worktree::
|
||||
Set the path to the root of the working tree.
|
||||
If `GIT_COMMON_DIR` environment variable is set, core.worktree
|
||||
is ignored and not used for determining the root of working tree.
|
||||
This can be overridden by the `GIT_WORK_TREE` environment
|
||||
variable and the `--work-tree` command-line option.
|
||||
The value can be an absolute path or relative to the path to
|
||||
the .git directory, which is either specified by --git-dir
|
||||
or GIT_DIR, or automatically discovered.
|
||||
If --git-dir or GIT_DIR is specified but none of
|
||||
--work-tree, GIT_WORK_TREE and core.worktree is specified,
|
||||
the current working directory is regarded as the top level
|
||||
of your working tree.
|
||||
+
|
||||
Note that this variable is honored even when set in a configuration
|
||||
file in a ".git" subdirectory of a directory and its value differs
|
||||
from the latter directory (e.g. "/path/to/.git/config" has
|
||||
core.worktree set to "/different/path"), which is most likely a
|
||||
misconfiguration. Running Git commands in the "/path/to" directory will
|
||||
still use "/different/path" as the root of the work tree and can cause
|
||||
confusion unless you know what you are doing (e.g. you are creating a
|
||||
read-only snapshot of the same index to a location different from the
|
||||
repository's usual working tree).
|
||||
|
||||
core.logAllRefUpdates::
|
||||
Enable the reflog. Updates to a ref <ref> is logged to the file
|
||||
"`$GIT_DIR/logs/<ref>`", by appending the new and old
|
||||
SHA-1, the date/time and the reason of the update, but
|
||||
only when the file exists. If this configuration
|
||||
variable is set to `true`, missing "`$GIT_DIR/logs/<ref>`"
|
||||
file is automatically created for branch heads (i.e. under
|
||||
`refs/heads/`), remote refs (i.e. under `refs/remotes/`),
|
||||
note refs (i.e. under `refs/notes/`), and the symbolic ref `HEAD`.
|
||||
If it is set to `always`, then a missing reflog is automatically
|
||||
created for any ref under `refs/`.
|
||||
+
|
||||
This information can be used to determine what commit
|
||||
was the tip of a branch "2 days ago".
|
||||
+
|
||||
This value is true by default in a repository that has
|
||||
a working directory associated with it, and false by
|
||||
default in a bare repository.
|
||||
|
||||
core.repositoryFormatVersion::
|
||||
Internal variable identifying the repository format and layout
|
||||
version.
|
||||
|
||||
core.sharedRepository::
|
||||
When 'group' (or 'true'), the repository is made shareable between
|
||||
several users in a group (making sure all the files and objects are
|
||||
group-writable). When 'all' (or 'world' or 'everybody'), the
|
||||
repository will be readable by all users, additionally to being
|
||||
group-shareable. When 'umask' (or 'false'), Git will use permissions
|
||||
reported by umask(2). When '0xxx', where '0xxx' is an octal number,
|
||||
files in the repository will have this mode value. '0xxx' will override
|
||||
user's umask value (whereas the other options will only override
|
||||
requested parts of the user's umask value). Examples: '0660' will make
|
||||
the repo read/write-able for the owner and group, but inaccessible to
|
||||
others (equivalent to 'group' unless umask is e.g. '0022'). '0640' is a
|
||||
repository that is group-readable but not group-writable.
|
||||
See linkgit:git-init[1]. False by default.
|
||||
|
||||
core.warnAmbiguousRefs::
|
||||
If true, Git will warn you if the ref name you passed it is ambiguous
|
||||
and might match multiple refs in the repository. True by default.
|
||||
|
||||
core.compression::
|
||||
An integer -1..9, indicating a default compression level.
|
||||
-1 is the zlib default. 0 means no compression,
|
||||
and 1..9 are various speed/size tradeoffs, 9 being slowest.
|
||||
If set, this provides a default to other compression variables,
|
||||
such as `core.looseCompression` and `pack.compression`.
|
||||
|
||||
core.looseCompression::
|
||||
An integer -1..9, indicating the compression level for objects that
|
||||
are not in a pack file. -1 is the zlib default. 0 means no
|
||||
compression, and 1..9 are various speed/size tradeoffs, 9 being
|
||||
slowest. If not set, defaults to core.compression. If that is
|
||||
not set, defaults to 1 (best speed).
|
||||
|
||||
core.packedGitWindowSize::
|
||||
Number of bytes of a pack file to map into memory in a
|
||||
single mapping operation. Larger window sizes may allow
|
||||
your system to process a smaller number of large pack files
|
||||
more quickly. Smaller window sizes will negatively affect
|
||||
performance due to increased calls to the operating system's
|
||||
memory manager, but may improve performance when accessing
|
||||
a large number of large pack files.
|
||||
+
|
||||
Default is 1 MiB if NO_MMAP was set at compile time, otherwise 32
|
||||
MiB on 32 bit platforms and 1 GiB on 64 bit platforms. This should
|
||||
be reasonable for all users/operating systems. You probably do
|
||||
not need to adjust this value.
|
||||
+
|
||||
Common unit suffixes of 'k', 'm', or 'g' are supported.
|
||||
|
||||
core.packedGitLimit::
|
||||
Maximum number of bytes to map simultaneously into memory
|
||||
from pack files. If Git needs to access more than this many
|
||||
bytes at once to complete an operation it will unmap existing
|
||||
regions to reclaim virtual address space within the process.
|
||||
+
|
||||
Default is 256 MiB on 32 bit platforms and 32 TiB (effectively
|
||||
unlimited) on 64 bit platforms.
|
||||
This should be reasonable for all users/operating systems, except on
|
||||
the largest projects. You probably do not need to adjust this value.
|
||||
+
|
||||
Common unit suffixes of 'k', 'm', or 'g' are supported.
|
||||
|
||||
core.deltaBaseCacheLimit::
|
||||
Maximum number of bytes to reserve for caching base objects
|
||||
that may be referenced by multiple deltified objects. By storing the
|
||||
entire decompressed base objects in a cache Git is able
|
||||
to avoid unpacking and decompressing frequently used base
|
||||
objects multiple times.
|
||||
+
|
||||
Default is 96 MiB on all platforms. This should be reasonable
|
||||
for all users/operating systems, except on the largest projects.
|
||||
You probably do not need to adjust this value.
|
||||
+
|
||||
Common unit suffixes of 'k', 'm', or 'g' are supported.
|
||||
|
||||
core.bigFileThreshold::
|
||||
Files larger than this size are stored deflated, without
|
||||
attempting delta compression. Storing large files without
|
||||
delta compression avoids excessive memory usage, at the
|
||||
slight expense of increased disk usage. Additionally files
|
||||
larger than this size are always treated as binary.
|
||||
+
|
||||
Default is 512 MiB on all platforms. This should be reasonable
|
||||
for most projects as source code and other text files can still
|
||||
be delta compressed, but larger binary media files won't be.
|
||||
+
|
||||
Common unit suffixes of 'k', 'm', or 'g' are supported.
|
||||
|
||||
core.excludesFile::
|
||||
Specifies the pathname to the file that contains patterns to
|
||||
describe paths that are not meant to be tracked, in addition
|
||||
to '.gitignore' (per-directory) and '.git/info/exclude'.
|
||||
Defaults to `$XDG_CONFIG_HOME/git/ignore`.
|
||||
If `$XDG_CONFIG_HOME` is either not set or empty, `$HOME/.config/git/ignore`
|
||||
is used instead. See linkgit:gitignore[5].
|
||||
|
||||
core.askPass::
|
||||
Some commands (e.g. svn and http interfaces) that interactively
|
||||
ask for a password can be told to use an external program given
|
||||
via the value of this variable. Can be overridden by the `GIT_ASKPASS`
|
||||
environment variable. If not set, fall back to the value of the
|
||||
`SSH_ASKPASS` environment variable or, failing that, a simple password
|
||||
prompt. The external program shall be given a suitable prompt as
|
||||
command-line argument and write the password on its STDOUT.
|
||||
|
||||
core.attributesFile::
|
||||
In addition to '.gitattributes' (per-directory) and
|
||||
'.git/info/attributes', Git looks into this file for attributes
|
||||
(see linkgit:gitattributes[5]). Path expansions are made the same
|
||||
way as for `core.excludesFile`. Its default value is
|
||||
`$XDG_CONFIG_HOME/git/attributes`. If `$XDG_CONFIG_HOME` is either not
|
||||
set or empty, `$HOME/.config/git/attributes` is used instead.
|
||||
|
||||
core.hooksPath::
|
||||
By default Git will look for your hooks in the
|
||||
'$GIT_DIR/hooks' directory. Set this to different path,
|
||||
e.g. '/etc/git/hooks', and Git will try to find your hooks in
|
||||
that directory, e.g. '/etc/git/hooks/pre-receive' instead of
|
||||
in '$GIT_DIR/hooks/pre-receive'.
|
||||
+
|
||||
The path can be either absolute or relative. A relative path is
|
||||
taken as relative to the directory where the hooks are run (see
|
||||
the "DESCRIPTION" section of linkgit:githooks[5]).
|
||||
+
|
||||
This configuration variable is useful in cases where you'd like to
|
||||
centrally configure your Git hooks instead of configuring them on a
|
||||
per-repository basis, or as a more flexible and centralized
|
||||
alternative to having an `init.templateDir` where you've changed
|
||||
default hooks.
|
||||
|
||||
core.editor::
|
||||
Commands such as `commit` and `tag` that let you edit
|
||||
messages by launching an editor use the value of this
|
||||
variable when it is set, and the environment variable
|
||||
`GIT_EDITOR` is not set. See linkgit:git-var[1].
|
||||
|
||||
core.commentChar::
|
||||
Commands such as `commit` and `tag` that let you edit
|
||||
messages consider a line that begins with this character
|
||||
commented, and removes them after the editor returns
|
||||
(default '#').
|
||||
+
|
||||
If set to "auto", `git-commit` would select a character that is not
|
||||
the beginning character of any line in existing commit messages.
|
||||
|
||||
core.filesRefLockTimeout::
|
||||
The length of time, in milliseconds, to retry when trying to
|
||||
lock an individual reference. Value 0 means not to retry at
|
||||
all; -1 means to try indefinitely. Default is 100 (i.e.,
|
||||
retry for 100ms).
|
||||
|
||||
core.packedRefsTimeout::
|
||||
The length of time, in milliseconds, to retry when trying to
|
||||
lock the `packed-refs` file. Value 0 means not to retry at
|
||||
all; -1 means to try indefinitely. Default is 1000 (i.e.,
|
||||
retry for 1 second).
|
||||
|
||||
core.pager::
|
||||
Text viewer for use by Git commands (e.g., 'less'). The value
|
||||
is meant to be interpreted by the shell. The order of preference
|
||||
is the `$GIT_PAGER` environment variable, then `core.pager`
|
||||
configuration, then `$PAGER`, and then the default chosen at
|
||||
compile time (usually 'less').
|
||||
+
|
||||
When the `LESS` environment variable is unset, Git sets it to `FRX`
|
||||
(if `LESS` environment variable is set, Git does not change it at
|
||||
all). If you want to selectively override Git's default setting
|
||||
for `LESS`, you can set `core.pager` to e.g. `less -S`. This will
|
||||
be passed to the shell by Git, which will translate the final
|
||||
command to `LESS=FRX less -S`. The environment does not set the
|
||||
`S` option but the command line does, instructing less to truncate
|
||||
long lines. Similarly, setting `core.pager` to `less -+F` will
|
||||
deactivate the `F` option specified by the environment from the
|
||||
command-line, deactivating the "quit if one screen" behavior of
|
||||
`less`. One can specifically activate some flags for particular
|
||||
commands: for example, setting `pager.blame` to `less -S` enables
|
||||
line truncation only for `git blame`.
|
||||
+
|
||||
Likewise, when the `LV` environment variable is unset, Git sets it
|
||||
to `-c`. You can override this setting by exporting `LV` with
|
||||
another value or setting `core.pager` to `lv +c`.
|
||||
|
||||
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. You can prefix `-` to disable
|
||||
any of them (e.g. `-trailing-space`):
|
||||
+
|
||||
* `blank-at-eol` treats trailing whitespaces at the end of the line
|
||||
as an error (enabled by default).
|
||||
* `space-before-tab` treats a space character that appears immediately
|
||||
before a tab character in the initial indent part of the line as an
|
||||
error (enabled by default).
|
||||
* `indent-with-non-tab` treats a line that is indented with space
|
||||
characters instead of the equivalent tabs as an error (not enabled by
|
||||
default).
|
||||
* `tab-in-indent` treats a tab character in the initial indent part of
|
||||
the line as an error (not enabled by default).
|
||||
* `blank-at-eof` treats blank lines added at the end of file as an error
|
||||
(enabled by default).
|
||||
* `trailing-space` is a short-hand to cover both `blank-at-eol` and
|
||||
`blank-at-eof`.
|
||||
* `cr-at-eol` treats a carriage-return at the end of line as
|
||||
part of the line terminator, i.e. with it, `trailing-space`
|
||||
does not trigger if the character before such a carriage-return
|
||||
is not a whitespace (not enabled by default).
|
||||
* `tabwidth=<n>` tells how many character positions a tab occupies; this
|
||||
is relevant for `indent-with-non-tab` and when Git fixes `tab-in-indent`
|
||||
errors. The default tab width is 8. Allowed values are 1 to 63.
|
||||
|
||||
core.fsyncObjectFiles::
|
||||
This boolean will enable 'fsync()' when writing object files.
|
||||
+
|
||||
This is a total waste of time and effort on a filesystem that orders
|
||||
data writes properly, but can be useful for filesystems that do not use
|
||||
journalling (traditional UNIX filesystems) or that only journal metadata
|
||||
and not file contents (OS X's HFS+, or Linux ext3 with "data=writeback").
|
||||
|
||||
core.preloadIndex::
|
||||
Enable parallel index preload for operations like 'git diff'
|
||||
+
|
||||
This can speed up operations like 'git diff' and 'git status' especially
|
||||
on filesystems like NFS that have weak caching semantics and thus
|
||||
relatively high IO latencies. When enabled, Git will do the
|
||||
index comparison to the filesystem data in parallel, allowing
|
||||
overlapping IO's. Defaults to true.
|
||||
|
||||
core.createObject::
|
||||
You can set this to 'link', in which case a hardlink followed by
|
||||
a delete of the source are used to make sure that object creation
|
||||
will not overwrite existing objects.
|
||||
+
|
||||
On some file system/operating system combinations, this is unreliable.
|
||||
Set this config setting to 'rename' there; However, This will remove the
|
||||
check that makes sure that existing object files will not get overwritten.
|
||||
|
||||
core.notesRef::
|
||||
When showing commit messages, also show notes which are stored in
|
||||
the given ref. The ref must be fully qualified. If the given
|
||||
ref does not exist, it is not an error but means that no
|
||||
notes should be printed.
|
||||
+
|
||||
This setting defaults to "refs/notes/commits", and it can be overridden by
|
||||
the `GIT_NOTES_REF` environment variable. See linkgit:git-notes[1].
|
||||
|
||||
core.commitGraph::
|
||||
If true, then git will read the commit-graph file (if it exists)
|
||||
to parse the graph structure of commits. Defaults to false. See
|
||||
linkgit:git-commit-graph[1] for more information.
|
||||
|
||||
core.useReplaceRefs::
|
||||
If set to `false`, behave as if the `--no-replace-objects`
|
||||
option was given on the command line. See linkgit:git[1] and
|
||||
linkgit:git-replace[1] for more information.
|
||||
|
||||
core.multiPackIndex::
|
||||
Use the multi-pack-index file to track multiple packfiles using a
|
||||
single index. See link:technical/multi-pack-index.html[the
|
||||
multi-pack-index design document].
|
||||
|
||||
core.sparseCheckout::
|
||||
Enable "sparse checkout" feature. See section "Sparse checkout" in
|
||||
linkgit:git-read-tree[1] for more information.
|
||||
|
||||
core.abbrev::
|
||||
Set the length object names are abbreviated to. If
|
||||
unspecified or set to "auto", an appropriate value is
|
||||
computed based on the approximate number of packed objects
|
||||
in your repository, which hopefully is enough for
|
||||
abbreviated object names to stay unique for some time.
|
||||
The minimum length is 4.
|
26
Documentation/config/credential.txt
Normal file
26
Documentation/config/credential.txt
Normal file
@ -0,0 +1,26 @@
|
||||
credential.helper::
|
||||
Specify an external helper to be called when a username or
|
||||
password credential is needed; the helper may consult external
|
||||
storage to avoid prompting the user for the credentials. Note
|
||||
that multiple helpers may be defined. See linkgit:gitcredentials[7]
|
||||
for details.
|
||||
|
||||
credential.useHttpPath::
|
||||
When acquiring credentials, consider the "path" component of an http
|
||||
or https URL to be important. Defaults to false. See
|
||||
linkgit:gitcredentials[7] for more information.
|
||||
|
||||
credential.username::
|
||||
If no username is set for a network authentication, use this username
|
||||
by default. See credential.<context>.* below, and
|
||||
linkgit:gitcredentials[7].
|
||||
|
||||
credential.<url>.*::
|
||||
Any of the credential.* options above can be applied selectively to
|
||||
some credentials. For example "credential.https://example.com.username"
|
||||
would set the default username only for https connections to
|
||||
example.com. See linkgit:gitcredentials[7] for details on how URLs are
|
||||
matched.
|
||||
|
||||
credentialCache.ignoreSIGHUP::
|
||||
Tell git-credential-cache--daemon to ignore SIGHUP, instead of quitting.
|
@ -185,7 +185,7 @@ diff.guitool::
|
||||
and requires that a corresponding difftool.<guitool>.cmd variable
|
||||
is defined.
|
||||
|
||||
include::mergetools-diff.txt[]
|
||||
include::../mergetools-diff.txt[]
|
||||
|
||||
diff.indentHeuristic::
|
||||
Set this option to `true` to enable experimental heuristics
|
14
Documentation/config/difftool.txt
Normal file
14
Documentation/config/difftool.txt
Normal file
@ -0,0 +1,14 @@
|
||||
difftool.<tool>.path::
|
||||
Override the path for the given tool. This is useful in case
|
||||
your tool is not in the PATH.
|
||||
|
||||
difftool.<tool>.cmd::
|
||||
Specify the command to invoke the specified diff tool.
|
||||
The specified command is evaluated in shell with the following
|
||||
variables available: 'LOCAL' is set to the name of the temporary
|
||||
file containing the contents of the diff pre-image and 'REMOTE'
|
||||
is set to the name of the temporary file containing the contents
|
||||
of the diff post-image.
|
||||
|
||||
difftool.prompt::
|
||||
Prompt before each invocation of the diff tool.
|
8
Documentation/config/fastimport.txt
Normal file
8
Documentation/config/fastimport.txt
Normal file
@ -0,0 +1,8 @@
|
||||
fastimport.unpackLimit::
|
||||
If the number of objects imported by linkgit:git-fast-import[1]
|
||||
is below this limit, then the objects will be unpacked into
|
||||
loose object files. However if the number of imported objects
|
||||
equals or exceeds this limit then the pack will be stored as a
|
||||
pack. Storing the pack from a fast-import can make the import
|
||||
operation complete faster, especially on slow filesystems. If
|
||||
not set, the value of `transfer.unpackLimit` is used instead.
|
9
Documentation/config/filter.txt
Normal file
9
Documentation/config/filter.txt
Normal file
@ -0,0 +1,9 @@
|
||||
filter.<driver>.clean::
|
||||
The command which is used to convert the content of a worktree
|
||||
file to a blob upon checkin. See linkgit:gitattributes[5] for
|
||||
details.
|
||||
|
||||
filter.<driver>.smudge::
|
||||
The command which is used to convert the content of a blob
|
||||
object to a worktree file upon checkout. See
|
||||
linkgit:gitattributes[5] for details.
|
67
Documentation/config/fsck.txt
Normal file
67
Documentation/config/fsck.txt
Normal file
@ -0,0 +1,67 @@
|
||||
fsck.<msg-id>::
|
||||
During fsck git may find issues with legacy data which
|
||||
wouldn't be generated by current versions of git, and which
|
||||
wouldn't be sent over the wire if `transfer.fsckObjects` was
|
||||
set. This feature is intended to support working with legacy
|
||||
repositories containing such data.
|
||||
+
|
||||
Setting `fsck.<msg-id>` will be picked up by linkgit:git-fsck[1], but
|
||||
to accept pushes of such data set `receive.fsck.<msg-id>` instead, or
|
||||
to clone or fetch it set `fetch.fsck.<msg-id>`.
|
||||
+
|
||||
The rest of the documentation discusses `fsck.*` for brevity, but the
|
||||
same applies for the corresponding `receive.fsck.*` and
|
||||
`fetch.<msg-id>.*`. variables.
|
||||
+
|
||||
Unlike variables like `color.ui` and `core.editor` the
|
||||
`receive.fsck.<msg-id>` and `fetch.fsck.<msg-id>` variables will not
|
||||
fall back on the `fsck.<msg-id>` configuration if they aren't set. To
|
||||
uniformly configure the same fsck settings in different circumstances
|
||||
all three of them they must all set to the same values.
|
||||
+
|
||||
When `fsck.<msg-id>` is set, errors can be switched to warnings and
|
||||
vice versa by configuring the `fsck.<msg-id>` setting where the
|
||||
`<msg-id>` is the fsck message ID and the value is one of `error`,
|
||||
`warn` or `ignore`. For convenience, fsck prefixes the error/warning
|
||||
with the message ID, e.g. "missingEmail: invalid author/committer line
|
||||
- missing email" means that setting `fsck.missingEmail = ignore` will
|
||||
hide that issue.
|
||||
+
|
||||
In general, it is better to enumerate existing objects with problems
|
||||
with `fsck.skipList`, instead of listing the kind of breakages these
|
||||
problematic objects share to be ignored, as doing the latter will
|
||||
allow new instances of the same breakages go unnoticed.
|
||||
+
|
||||
Setting an unknown `fsck.<msg-id>` value will cause fsck to die, but
|
||||
doing the same for `receive.fsck.<msg-id>` and `fetch.fsck.<msg-id>`
|
||||
will only cause git to warn.
|
||||
|
||||
fsck.skipList::
|
||||
The path to a list of object names (i.e. one unabbreviated SHA-1 per
|
||||
line) that are known to be broken in a non-fatal way and should
|
||||
be ignored. On versions of Git 2.20 and later comments ('#'), empty
|
||||
lines, and any leading and trailing whitespace is ignored. Everything
|
||||
but a SHA-1 per line will error out on older versions.
|
||||
+
|
||||
This feature is useful when an established project should be accepted
|
||||
despite early commits containing errors that can be safely ignored
|
||||
such as invalid committer email addresses. Note: corrupt objects
|
||||
cannot be skipped with this setting.
|
||||
+
|
||||
Like `fsck.<msg-id>` this variable has corresponding
|
||||
`receive.fsck.skipList` and `fetch.fsck.skipList` variants.
|
||||
+
|
||||
Unlike variables like `color.ui` and `core.editor` the
|
||||
`receive.fsck.skipList` and `fetch.fsck.skipList` variables will not
|
||||
fall back on the `fsck.skipList` configuration if they aren't set. To
|
||||
uniformly configure the same fsck settings in different circumstances
|
||||
all three of them they must all set to the same values.
|
||||
+
|
||||
Older versions of Git (before 2.20) documented that the object names
|
||||
list should be sorted. This was never a requirement, the object names
|
||||
could appear in any order, but when reading the list we tracked whether
|
||||
the list was sorted for the purposes of an internal binary search
|
||||
implementation, which could save itself some work with an already sorted
|
||||
list. Unless you had a humongous list there was no reason to go out of
|
||||
your way to pre-sort the list. After Git version 2.20 a hash implementation
|
||||
is used instead, so there's now no reason to pre-sort the list.
|
108
Documentation/config/gc.txt
Normal file
108
Documentation/config/gc.txt
Normal file
@ -0,0 +1,108 @@
|
||||
gc.aggressiveDepth::
|
||||
The depth parameter used in the delta compression
|
||||
algorithm used by 'git gc --aggressive'. This defaults
|
||||
to 50.
|
||||
|
||||
gc.aggressiveWindow::
|
||||
The window size parameter used in the delta compression
|
||||
algorithm used by 'git gc --aggressive'. This defaults
|
||||
to 250.
|
||||
|
||||
gc.auto::
|
||||
When there are approximately more than this many loose
|
||||
objects in the repository, `git gc --auto` will pack them.
|
||||
Some Porcelain commands use this command to perform a
|
||||
light-weight garbage collection from time to time. The
|
||||
default value is 6700. Setting this to 0 disables it.
|
||||
|
||||
gc.autoPackLimit::
|
||||
When there are more than this many packs that are not
|
||||
marked with `*.keep` file in the repository, `git gc
|
||||
--auto` consolidates them into one larger pack. The
|
||||
default value is 50. Setting this to 0 disables it.
|
||||
|
||||
gc.autoDetach::
|
||||
Make `git gc --auto` return immediately and run in background
|
||||
if the system supports it. Default is true.
|
||||
|
||||
gc.bigPackThreshold::
|
||||
If non-zero, all packs larger than this limit are kept when
|
||||
`git gc` is run. This is very similar to `--keep-base-pack`
|
||||
except that all packs that meet the threshold are kept, not
|
||||
just the base pack. Defaults to zero. Common unit suffixes of
|
||||
'k', 'm', or 'g' are supported.
|
||||
+
|
||||
Note that if the number of kept packs is more than gc.autoPackLimit,
|
||||
this configuration variable is ignored, all packs except the base pack
|
||||
will be repacked. After this the number of packs should go below
|
||||
gc.autoPackLimit and gc.bigPackThreshold should be respected again.
|
||||
|
||||
gc.writeCommitGraph::
|
||||
If true, then gc will rewrite the commit-graph file when
|
||||
linkgit:git-gc[1] is run. When using linkgit:git-gc[1]
|
||||
'--auto' the commit-graph will be updated if housekeeping is
|
||||
required. Default is false. See linkgit:git-commit-graph[1]
|
||||
for details.
|
||||
|
||||
gc.logExpiry::
|
||||
If the file gc.log exists, then `git gc --auto` will print
|
||||
its content and exit with status zero instead of running
|
||||
unless that file is more than 'gc.logExpiry' old. Default is
|
||||
"1.day". See `gc.pruneExpire` for more ways to specify its
|
||||
value.
|
||||
|
||||
gc.packRefs::
|
||||
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 `notbare`
|
||||
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'.
|
||||
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, or "never" may be used to
|
||||
suppress pruning. This feature helps prevent corruption when
|
||||
'git gc' runs concurrently with another process writing to the
|
||||
repository; see the "NOTES" section of linkgit:git-gc[1].
|
||||
|
||||
gc.worktreePruneExpire::
|
||||
When 'git gc' is run, it calls
|
||||
'git worktree prune --expire 3.months.ago'.
|
||||
This config variable can be used to set a different grace
|
||||
period. The value "now" may be used to disable the grace
|
||||
period and prune `$GIT_DIR/worktrees` immediately, or "never"
|
||||
may be used to suppress pruning.
|
||||
|
||||
gc.reflogExpire::
|
||||
gc.<pattern>.reflogExpire::
|
||||
'git reflog expire' removes reflog entries older than
|
||||
this time; defaults to 90 days. The value "now" expires all
|
||||
entries immediately, and "never" suppresses expiration
|
||||
altogether. With "<pattern>" (e.g.
|
||||
"refs/stash") in the middle the setting applies only to
|
||||
the refs that match the <pattern>.
|
||||
|
||||
gc.reflogExpireUnreachable::
|
||||
gc.<pattern>.reflogExpireUnreachable::
|
||||
'git reflog expire' removes reflog entries older than
|
||||
this time and are not reachable from the current tip;
|
||||
defaults to 30 days. The value "now" expires all entries
|
||||
immediately, and "never" suppresses expiration altogether.
|
||||
With "<pattern>" (e.g. "refs/stash")
|
||||
in the middle, the setting applies only to the refs that
|
||||
match the <pattern>.
|
||||
|
||||
gc.rerereResolved::
|
||||
Records of conflicted merge you resolved earlier are
|
||||
kept for this many days when 'git rerere gc' is run.
|
||||
You can also use more human-readable "1.month.ago", etc.
|
||||
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.
|
||||
You can also use more human-readable "1.month.ago", etc.
|
||||
The default is 15 days. See linkgit:git-rerere[1].
|
16
Documentation/config/gitweb.txt
Normal file
16
Documentation/config/gitweb.txt
Normal file
@ -0,0 +1,16 @@
|
||||
gitweb.category::
|
||||
gitweb.description::
|
||||
gitweb.owner::
|
||||
gitweb.url::
|
||||
See linkgit:gitweb[1] for description.
|
||||
|
||||
gitweb.avatar::
|
||||
gitweb.blame::
|
||||
gitweb.grep::
|
||||
gitweb.highlight::
|
||||
gitweb.patches::
|
||||
gitweb.pickaxe::
|
||||
gitweb.remote_heads::
|
||||
gitweb.showSizes::
|
||||
gitweb.snapshot::
|
||||
See linkgit:gitweb.conf[5] for description.
|
20
Documentation/config/gpg.txt
Normal file
20
Documentation/config/gpg.txt
Normal file
@ -0,0 +1,20 @@
|
||||
gpg.program::
|
||||
Use this custom program instead of "`gpg`" found on `$PATH` when
|
||||
making or verifying a PGP signature. The program must support the
|
||||
same command-line interface as GPG, namely, to verify a detached
|
||||
signature, "`gpg --verify $file - <$signature`" is run, and the
|
||||
program is expected to signal a good signature by exiting with
|
||||
code 0, and to generate an ASCII-armored detached signature, the
|
||||
standard input of "`gpg -bsau $key`" is fed with the contents to be
|
||||
signed, and the program is expected to send the result to its
|
||||
standard output.
|
||||
|
||||
gpg.format::
|
||||
Specifies which key format to use when signing with `--gpg-sign`.
|
||||
Default is "openpgp" and another possible value is "x509".
|
||||
|
||||
gpg.<format>.program::
|
||||
Use this to customize the program used for the signing format you
|
||||
chose. (see `gpg.program` and `gpg.format`) `gpg.program` can still
|
||||
be used as a legacy synonym for `gpg.openpgp.program`. The default
|
||||
value for `gpg.x509.program` is "gpgsm".
|
24
Documentation/config/grep.txt
Normal file
24
Documentation/config/grep.txt
Normal file
@ -0,0 +1,24 @@
|
||||
grep.lineNumber::
|
||||
If set to true, enable `-n` option by default.
|
||||
|
||||
grep.column::
|
||||
If set to true, enable the `--column` option by default.
|
||||
|
||||
grep.patternType::
|
||||
Set the default matching behavior. Using a value of 'basic', 'extended',
|
||||
'fixed', or 'perl' will enable the `--basic-regexp`, `--extended-regexp`,
|
||||
`--fixed-strings`, or `--perl-regexp` option accordingly, while the
|
||||
value 'default' will return to the default matching behavior.
|
||||
|
||||
grep.extendedRegexp::
|
||||
If set to true, enable `--extended-regexp` option by default. This
|
||||
option is ignored when the `grep.patternType` option is set to a value
|
||||
other than 'default'.
|
||||
|
||||
grep.threads::
|
||||
Number of grep worker threads to use.
|
||||
See `grep.threads` in linkgit:git-grep[1] for more information.
|
||||
|
||||
grep.fallbackToNoIndex::
|
||||
If set to true, fall back to git grep --no-index if git grep
|
||||
is executed outside of a git repository. Defaults to false.
|
50
Documentation/config/guitool.txt
Normal file
50
Documentation/config/guitool.txt
Normal file
@ -0,0 +1,50 @@
|
||||
guitool.<name>.cmd::
|
||||
Specifies the shell command line to execute when the corresponding item
|
||||
of the linkgit:git-gui[1] `Tools` menu is invoked. This option is
|
||||
mandatory for every tool. The command is executed from the root of
|
||||
the working directory, and in the environment it receives the name of
|
||||
the tool as `GIT_GUITOOL`, the name of the currently selected file as
|
||||
'FILENAME', and the name of the current branch as 'CUR_BRANCH' (if
|
||||
the head is detached, 'CUR_BRANCH' is empty).
|
||||
|
||||
guitool.<name>.needsFile::
|
||||
Run the tool only if a diff is selected in the GUI. It guarantees
|
||||
that 'FILENAME' is not empty.
|
||||
|
||||
guitool.<name>.noConsole::
|
||||
Run the command silently, without creating a window to display its
|
||||
output.
|
||||
|
||||
guitool.<name>.noRescan::
|
||||
Don't rescan the working directory for changes after the tool
|
||||
finishes execution.
|
||||
|
||||
guitool.<name>.confirm::
|
||||
Show a confirmation dialog before actually running the tool.
|
||||
|
||||
guitool.<name>.argPrompt::
|
||||
Request a string argument from the user, and pass it to the tool
|
||||
through the `ARGS` environment variable. Since requesting an
|
||||
argument implies confirmation, the 'confirm' option has no effect
|
||||
if this is enabled. If the option is set to 'true', 'yes', or '1',
|
||||
the dialog uses a built-in generic prompt; otherwise the exact
|
||||
value of the variable is used.
|
||||
|
||||
guitool.<name>.revPrompt::
|
||||
Request a single valid revision from the user, and set the
|
||||
`REVISION` environment variable. In other aspects this option
|
||||
is similar to 'argPrompt', and can be used together with it.
|
||||
|
||||
guitool.<name>.revUnmerged::
|
||||
Show only unmerged branches in the 'revPrompt' subdialog.
|
||||
This is useful for tools similar to merge or rebase, but not
|
||||
for things like checkout or reset.
|
||||
|
||||
guitool.<name>.title::
|
||||
Specifies the title to use for the prompt dialog. The default
|
||||
is the tool name.
|
||||
|
||||
guitool.<name>.prompt::
|
||||
Specifies the general prompt string to display at the top of
|
||||
the dialog, before subsections for 'argPrompt' and 'revPrompt'.
|
||||
The default value includes the actual command.
|
23
Documentation/config/help.txt
Normal file
23
Documentation/config/help.txt
Normal file
@ -0,0 +1,23 @@
|
||||
help.browser::
|
||||
Specify the browser that will be used to display help in the
|
||||
'web' format. See linkgit:git-help[1].
|
||||
|
||||
help.format::
|
||||
Override the default help format used by linkgit:git-help[1].
|
||||
Values 'man', 'info', 'web' and 'html' are supported. 'man' is
|
||||
the default. 'web' and 'html' are the same.
|
||||
|
||||
help.autoCorrect::
|
||||
Automatically correct and execute mistyped commands after
|
||||
waiting for the given number of deciseconds (0.1 sec). If more
|
||||
than one command can be deduced from the entered text, nothing
|
||||
will be executed. If the value of this option is negative,
|
||||
the corrected command will be executed immediately. If the
|
||||
value is 0 - the command will be just shown but not executed.
|
||||
This is the default.
|
||||
|
||||
help.htmlPath::
|
||||
Specify the path where the HTML documentation resides. File system paths
|
||||
and URLs are supported. HTML pages will be prefixed with this path when
|
||||
help is displayed in the 'web' format. This defaults to the documentation
|
||||
path of your Git installation.
|
271
Documentation/config/http.txt
Normal file
271
Documentation/config/http.txt
Normal file
@ -0,0 +1,271 @@
|
||||
http.proxy::
|
||||
Override the HTTP proxy, normally configured using the 'http_proxy',
|
||||
'https_proxy', and 'all_proxy' environment variables (see `curl(1)`). In
|
||||
addition to the syntax understood by curl, it is possible to specify a
|
||||
proxy string with a user name but no password, in which case git will
|
||||
attempt to acquire one in the same way it does for other credentials. See
|
||||
linkgit:gitcredentials[7] for more information. The syntax thus is
|
||||
'[protocol://][user[:password]@]proxyhost[:port]'. This can be overridden
|
||||
on a per-remote basis; see remote.<name>.proxy
|
||||
|
||||
http.proxyAuthMethod::
|
||||
Set the method with which to authenticate against the HTTP proxy. This
|
||||
only takes effect if the configured proxy string contains a user name part
|
||||
(i.e. is of the form 'user@host' or 'user@host:port'). This can be
|
||||
overridden on a per-remote basis; see `remote.<name>.proxyAuthMethod`.
|
||||
Both can be overridden by the `GIT_HTTP_PROXY_AUTHMETHOD` environment
|
||||
variable. Possible values are:
|
||||
+
|
||||
--
|
||||
* `anyauth` - Automatically pick a suitable authentication method. It is
|
||||
assumed that the proxy answers an unauthenticated request with a 407
|
||||
status code and one or more Proxy-authenticate headers with supported
|
||||
authentication methods. This is the default.
|
||||
* `basic` - HTTP Basic authentication
|
||||
* `digest` - HTTP Digest authentication; this prevents the password from being
|
||||
transmitted to the proxy in clear text
|
||||
* `negotiate` - GSS-Negotiate authentication (compare the --negotiate option
|
||||
of `curl(1)`)
|
||||
* `ntlm` - NTLM authentication (compare the --ntlm option of `curl(1)`)
|
||||
--
|
||||
|
||||
http.emptyAuth::
|
||||
Attempt authentication without seeking a username or password. This
|
||||
can be used to attempt GSS-Negotiate authentication without specifying
|
||||
a username in the URL, as libcurl normally requires a username for
|
||||
authentication.
|
||||
|
||||
http.delegation::
|
||||
Control GSSAPI credential delegation. The delegation is disabled
|
||||
by default in libcurl since version 7.21.7. Set parameter to tell
|
||||
the server what it is allowed to delegate when it comes to user
|
||||
credentials. Used with GSS/kerberos. Possible values are:
|
||||
+
|
||||
--
|
||||
* `none` - Don't allow any delegation.
|
||||
* `policy` - Delegates if and only if the OK-AS-DELEGATE flag is set in the
|
||||
Kerberos service ticket, which is a matter of realm policy.
|
||||
* `always` - Unconditionally allow the server to delegate.
|
||||
--
|
||||
|
||||
|
||||
http.extraHeader::
|
||||
Pass an additional HTTP header when communicating with a server. If
|
||||
more than one such entry exists, all of them are added as extra
|
||||
headers. To allow overriding the settings inherited from the system
|
||||
config, an empty value will reset the extra headers to the empty list.
|
||||
|
||||
http.cookieFile::
|
||||
The pathname of a file containing previously stored cookie lines,
|
||||
which should be used
|
||||
in the Git http session, if they match the server. The file format
|
||||
of the file to read cookies from should be plain HTTP headers or
|
||||
the Netscape/Mozilla cookie file format (see `curl(1)`).
|
||||
NOTE that the file specified with http.cookieFile is used only as
|
||||
input unless http.saveCookies is set.
|
||||
|
||||
http.saveCookies::
|
||||
If set, store cookies received during requests to the file specified by
|
||||
http.cookieFile. Has no effect if http.cookieFile is unset.
|
||||
|
||||
http.sslVersion::
|
||||
The SSL version to use when negotiating an SSL connection, if you
|
||||
want to force the default. The available and default version
|
||||
depend on whether libcurl was built against NSS or OpenSSL and the
|
||||
particular configuration of the crypto library in use. Internally
|
||||
this sets the 'CURLOPT_SSL_VERSION' option; see the libcurl
|
||||
documentation for more details on the format of this option and
|
||||
for the ssl version supported. Actually the possible values of
|
||||
this option are:
|
||||
|
||||
- sslv2
|
||||
- sslv3
|
||||
- tlsv1
|
||||
- tlsv1.0
|
||||
- tlsv1.1
|
||||
- tlsv1.2
|
||||
- tlsv1.3
|
||||
|
||||
+
|
||||
Can be overridden by the `GIT_SSL_VERSION` environment variable.
|
||||
To force git to use libcurl's default ssl version and ignore any
|
||||
explicit http.sslversion option, set `GIT_SSL_VERSION` to the
|
||||
empty string.
|
||||
|
||||
http.sslCipherList::
|
||||
A list of SSL ciphers to use when negotiating an SSL connection.
|
||||
The available ciphers depend on whether libcurl was built against
|
||||
NSS or OpenSSL and the particular configuration of the crypto
|
||||
library in use. Internally this sets the 'CURLOPT_SSL_CIPHER_LIST'
|
||||
option; see the libcurl documentation for more details on the format
|
||||
of this list.
|
||||
+
|
||||
Can be overridden by the `GIT_SSL_CIPHER_LIST` environment variable.
|
||||
To force git to use libcurl's default cipher list and ignore any
|
||||
explicit http.sslCipherList option, set `GIT_SSL_CIPHER_LIST` to the
|
||||
empty string.
|
||||
|
||||
http.sslVerify::
|
||||
Whether to verify the SSL certificate when fetching or pushing
|
||||
over HTTPS. Defaults to true. Can be overridden by the
|
||||
`GIT_SSL_NO_VERIFY` environment variable.
|
||||
|
||||
http.sslCert::
|
||||
File containing the SSL certificate when fetching or pushing
|
||||
over HTTPS. Can be overridden by the `GIT_SSL_CERT` environment
|
||||
variable.
|
||||
|
||||
http.sslKey::
|
||||
File containing the SSL private key when fetching or pushing
|
||||
over HTTPS. Can be overridden by the `GIT_SSL_KEY` environment
|
||||
variable.
|
||||
|
||||
http.sslCertPasswordProtected::
|
||||
Enable Git's password prompt for the SSL certificate. Otherwise
|
||||
OpenSSL will prompt the user, possibly many times, if the
|
||||
certificate or private key is encrypted. Can be overridden by the
|
||||
`GIT_SSL_CERT_PASSWORD_PROTECTED` environment variable.
|
||||
|
||||
http.sslCAInfo::
|
||||
File containing the certificates to verify the peer with when
|
||||
fetching or pushing over HTTPS. Can be overridden by the
|
||||
`GIT_SSL_CAINFO` environment variable.
|
||||
|
||||
http.sslCAPath::
|
||||
Path containing files with the CA certificates to verify the peer
|
||||
with when fetching or pushing over HTTPS. Can be overridden
|
||||
by the `GIT_SSL_CAPATH` environment variable.
|
||||
|
||||
http.sslBackend::
|
||||
Name of the SSL backend to use (e.g. "openssl" or "schannel").
|
||||
This option is ignored if cURL lacks support for choosing the SSL
|
||||
backend at runtime.
|
||||
|
||||
http.schannelCheckRevoke::
|
||||
Used to enforce or disable certificate revocation checks in cURL
|
||||
when http.sslBackend is set to "schannel". Defaults to `true` if
|
||||
unset. Only necessary to disable this if Git consistently errors
|
||||
and the message is about checking the revocation status of a
|
||||
certificate. This option is ignored if cURL lacks support for
|
||||
setting the relevant SSL option at runtime.
|
||||
|
||||
http.schannelUseSSLCAInfo::
|
||||
As of cURL v7.60.0, the Secure Channel backend can use the
|
||||
certificate bundle provided via `http.sslCAInfo`, but that would
|
||||
override the Windows Certificate Store. Since this is not desirable
|
||||
by default, Git will tell cURL not to use that bundle by default
|
||||
when the `schannel` backend was configured via `http.sslBackend`,
|
||||
unless `http.schannelUseSSLCAInfo` overrides this behavior.
|
||||
|
||||
http.pinnedpubkey::
|
||||
Public key of the https service. It may either be the filename of
|
||||
a PEM or DER encoded public key file or a string starting with
|
||||
'sha256//' followed by the base64 encoded sha256 hash of the
|
||||
public key. See also libcurl 'CURLOPT_PINNEDPUBLICKEY'. git will
|
||||
exit with an error if this option is set but not supported by
|
||||
cURL.
|
||||
|
||||
http.sslTry::
|
||||
Attempt to use AUTH SSL/TLS and encrypted data transfers
|
||||
when connecting via regular FTP protocol. This might be needed
|
||||
if the FTP server requires it for security reasons or you wish
|
||||
to connect securely whenever remote FTP server supports it.
|
||||
Default is false since it might trigger certificate verification
|
||||
errors on misconfigured servers.
|
||||
|
||||
http.maxRequests::
|
||||
How many HTTP requests to launch in parallel. Can be overridden
|
||||
by the `GIT_HTTP_MAX_REQUESTS` environment variable. Default is 5.
|
||||
|
||||
http.minSessions::
|
||||
The number of curl sessions (counted across slots) to be kept across
|
||||
requests. They will not be ended with curl_easy_cleanup() until
|
||||
http_cleanup() is invoked. If USE_CURL_MULTI is not defined, this
|
||||
value will be capped at 1. Defaults to 1.
|
||||
|
||||
http.postBuffer::
|
||||
Maximum size in bytes of the buffer used by smart HTTP
|
||||
transports when POSTing data to the remote system.
|
||||
For requests larger than this buffer size, HTTP/1.1 and
|
||||
Transfer-Encoding: chunked is used to avoid creating a
|
||||
massive pack file locally. Default is 1 MiB, which is
|
||||
sufficient for most requests.
|
||||
|
||||
http.lowSpeedLimit, http.lowSpeedTime::
|
||||
If the HTTP transfer speed is less than 'http.lowSpeedLimit'
|
||||
for longer than 'http.lowSpeedTime' seconds, the transfer is aborted.
|
||||
Can be overridden by the `GIT_HTTP_LOW_SPEED_LIMIT` and
|
||||
`GIT_HTTP_LOW_SPEED_TIME` environment variables.
|
||||
|
||||
http.noEPSV::
|
||||
A boolean which disables using of EPSV ftp command by curl.
|
||||
This can helpful with some "poor" ftp servers which don't
|
||||
support EPSV mode. Can be overridden by the `GIT_CURL_FTP_NO_EPSV`
|
||||
environment variable. Default is false (curl will use EPSV).
|
||||
|
||||
http.userAgent::
|
||||
The HTTP USER_AGENT string presented to an HTTP server. The default
|
||||
value represents the version of the client Git such as git/1.7.1.
|
||||
This option allows you to override this value to a more common value
|
||||
such as Mozilla/4.0. This may be necessary, for instance, if
|
||||
connecting through a firewall that restricts HTTP connections to a set
|
||||
of common USER_AGENT strings (but not including those like git/1.7.1).
|
||||
Can be overridden by the `GIT_HTTP_USER_AGENT` environment variable.
|
||||
|
||||
http.followRedirects::
|
||||
Whether git should follow HTTP redirects. If set to `true`, git
|
||||
will transparently follow any redirect issued by a server it
|
||||
encounters. If set to `false`, git will treat all redirects as
|
||||
errors. If set to `initial`, git will follow redirects only for
|
||||
the initial request to a remote, but not for subsequent
|
||||
follow-up HTTP requests. Since git uses the redirected URL as
|
||||
the base for the follow-up requests, this is generally
|
||||
sufficient. The default is `initial`.
|
||||
|
||||
http.<url>.*::
|
||||
Any of the http.* options above can be applied selectively to some URLs.
|
||||
For a config key to match a URL, each element of the config key is
|
||||
compared to that of the URL, in the following order:
|
||||
+
|
||||
--
|
||||
. Scheme (e.g., `https` in `https://example.com/`). This field
|
||||
must match exactly between the config key and the URL.
|
||||
|
||||
. Host/domain name (e.g., `example.com` in `https://example.com/`).
|
||||
This field must match between the config key and the URL. It is
|
||||
possible to specify a `*` as part of the host name to match all subdomains
|
||||
at this level. `https://*.example.com/` for example would match
|
||||
`https://foo.example.com/`, but not `https://foo.bar.example.com/`.
|
||||
|
||||
. Port number (e.g., `8080` in `http://example.com:8080/`).
|
||||
This field must match exactly between the config key and the URL.
|
||||
Omitted port numbers are automatically converted to the correct
|
||||
default for the scheme before matching.
|
||||
|
||||
. Path (e.g., `repo.git` in `https://example.com/repo.git`). The
|
||||
path field of the config key must match the path field of the URL
|
||||
either exactly or as a prefix of slash-delimited path elements. This means
|
||||
a config key with path `foo/` matches URL path `foo/bar`. A prefix can only
|
||||
match on a slash (`/`) boundary. Longer matches take precedence (so a config
|
||||
key with path `foo/bar` is a better match to URL path `foo/bar` than a config
|
||||
key with just path `foo/`).
|
||||
|
||||
. User name (e.g., `user` in `https://user@example.com/repo.git`). If
|
||||
the config key has a user name it must match the user name in the
|
||||
URL exactly. If the config key does not have a user name, that
|
||||
config key will match a URL with any user name (including none),
|
||||
but at a lower precedence than a config key with a user name.
|
||||
--
|
||||
+
|
||||
The list above is ordered by decreasing precedence; a URL that matches
|
||||
a config key's path is preferred to one that matches its user name. For example,
|
||||
if the URL is `https://user@example.com/foo/bar` a config key match of
|
||||
`https://example.com/foo` will be preferred over a config key match of
|
||||
`https://user@example.com`.
|
||||
+
|
||||
All URLs are normalized before attempting any matching (the password part,
|
||||
if embedded in the URL, is always ignored for matching purposes) so that
|
||||
equivalent URLs that are simply spelled differently will match properly.
|
||||
Environment variable settings always override any matches. The URLs that are
|
||||
matched against are those given directly to Git commands. This means any URLs
|
||||
visited as a result of a redirection do not participate in matching.
|
10
Documentation/config/i18n.txt
Normal file
10
Documentation/config/i18n.txt
Normal file
@ -0,0 +1,10 @@
|
||||
i18n.commitEncoding::
|
||||
Character encoding the commit messages are stored in; Git itself
|
||||
does not care per se, but this information is necessary e.g. when
|
||||
importing commits from emails or in the gitk graphical history
|
||||
browser (and possibly at other places in the future or in other
|
||||
porcelains). See e.g. linkgit:git-mailinfo[1]. Defaults to 'utf-8'.
|
||||
|
||||
i18n.logOutputEncoding::
|
||||
Character encoding the commit messages are converted to when
|
||||
running 'git log' and friends.
|
44
Documentation/config/imap.txt
Normal file
44
Documentation/config/imap.txt
Normal file
@ -0,0 +1,44 @@
|
||||
imap.folder::
|
||||
The folder to drop the mails into, which is typically the Drafts
|
||||
folder. For example: "INBOX.Drafts", "INBOX/Drafts" or
|
||||
"[Gmail]/Drafts". Required.
|
||||
|
||||
imap.tunnel::
|
||||
Command used to setup a tunnel to the IMAP server through which
|
||||
commands will be piped instead of using a direct network connection
|
||||
to the server. Required when imap.host is not set.
|
||||
|
||||
imap.host::
|
||||
A URL identifying the server. Use an `imap://` prefix for non-secure
|
||||
connections and an `imaps://` prefix for secure connections.
|
||||
Ignored when imap.tunnel is set, but required otherwise.
|
||||
|
||||
imap.user::
|
||||
The username to use when logging in to the server.
|
||||
|
||||
imap.pass::
|
||||
The password to use when logging in to the server.
|
||||
|
||||
imap.port::
|
||||
An integer port number to connect to on the server.
|
||||
Defaults to 143 for imap:// hosts and 993 for imaps:// hosts.
|
||||
Ignored when imap.tunnel is set.
|
||||
|
||||
imap.sslverify::
|
||||
A boolean to enable/disable verification of the server certificate
|
||||
used by the SSL/TLS connection. Default is `true`. Ignored when
|
||||
imap.tunnel is set.
|
||||
|
||||
imap.preformattedHTML::
|
||||
A boolean to enable/disable the use of html encoding when sending
|
||||
a patch. An html encoded patch will be bracketed with <pre>
|
||||
and have a content type of text/html. Ironically, enabling this
|
||||
option causes Thunderbird to send the patch as a plain/text,
|
||||
format=fixed email. Default is `false`.
|
||||
|
||||
imap.authMethod::
|
||||
Specify authenticate method for authentication with IMAP server.
|
||||
If Git was built with the NO_CURL option, or if your curl version is older
|
||||
than 7.34.0, or if you're running git-imap-send with the `--no-curl`
|
||||
option, the only supported method is 'CRAM-MD5'. If this is not set
|
||||
then 'git imap-send' uses the basic IMAP plaintext LOGIN command.
|
10
Documentation/config/index.txt
Normal file
10
Documentation/config/index.txt
Normal file
@ -0,0 +1,10 @@
|
||||
index.threads::
|
||||
Specifies the number of threads to spawn when loading the index.
|
||||
This is meant to reduce index load time on multiprocessor machines.
|
||||
Specifying 0 or 'true' will cause Git to auto-detect the number of
|
||||
CPU's and set the number of threads accordingly. Specifying 1 or
|
||||
'false' will disable multithreading. Defaults to 'true'.
|
||||
|
||||
index.version::
|
||||
Specify the version with which new index files should be
|
||||
initialized. This does not affect existing repositories.
|
3
Documentation/config/init.txt
Normal file
3
Documentation/config/init.txt
Normal file
@ -0,0 +1,3 @@
|
||||
init.templateDir::
|
||||
Specify the directory from which templates will be copied.
|
||||
(See the "TEMPLATE DIRECTORY" section of linkgit:git-init[1].)
|
20
Documentation/config/instaweb.txt
Normal file
20
Documentation/config/instaweb.txt
Normal file
@ -0,0 +1,20 @@
|
||||
instaweb.browser::
|
||||
Specify the program that will be used to browse your working
|
||||
repository in gitweb. See linkgit:git-instaweb[1].
|
||||
|
||||
instaweb.httpd::
|
||||
The HTTP daemon command-line to start gitweb on your working
|
||||
repository. See linkgit:git-instaweb[1].
|
||||
|
||||
instaweb.local::
|
||||
If true the web server started by linkgit:git-instaweb[1] will
|
||||
be bound to the local IP (127.0.0.1).
|
||||
|
||||
instaweb.modulePath::
|
||||
The default module path for linkgit:git-instaweb[1] to use
|
||||
instead of /usr/lib/apache2/modules. Only used if httpd
|
||||
is Apache.
|
||||
|
||||
instaweb.port::
|
||||
The port number to bind the gitweb httpd to. See
|
||||
linkgit:git-instaweb[1].
|
16
Documentation/config/interactive.txt
Normal file
16
Documentation/config/interactive.txt
Normal file
@ -0,0 +1,16 @@
|
||||
interactive.singleKey::
|
||||
In interactive commands, allow the user to provide one-letter
|
||||
input with a single key (i.e., without hitting enter).
|
||||
Currently this is used by the `--patch` mode of
|
||||
linkgit:git-add[1], linkgit:git-checkout[1], linkgit:git-commit[1],
|
||||
linkgit:git-reset[1], and linkgit:git-stash[1]. Note that this
|
||||
setting is silently ignored if portable keystroke input
|
||||
is not available; requires the Perl module Term::ReadKey.
|
||||
|
||||
interactive.diffFilter::
|
||||
When an interactive command (such as `git add --patch`) shows
|
||||
a colorized diff, git will pipe the diff through the shell
|
||||
command defined by this configuration variable. The command may
|
||||
mark up the diff further for human consumption, provided that it
|
||||
retains a one-to-one correspondence with the lines in the
|
||||
original diff. Defaults to disabled (no filtering).
|
43
Documentation/config/log.txt
Normal file
43
Documentation/config/log.txt
Normal file
@ -0,0 +1,43 @@
|
||||
log.abbrevCommit::
|
||||
If true, makes linkgit:git-log[1], linkgit:git-show[1], and
|
||||
linkgit:git-whatchanged[1] assume `--abbrev-commit`. You may
|
||||
override this option with `--no-abbrev-commit`.
|
||||
|
||||
log.date::
|
||||
Set the default date-time mode for the 'log' command.
|
||||
Setting a value for log.date is similar to using 'git log''s
|
||||
`--date` option. See linkgit:git-log[1] for details.
|
||||
|
||||
log.decorate::
|
||||
Print out the ref names of any commits that are shown by the log
|
||||
command. If 'short' is specified, the ref name prefixes 'refs/heads/',
|
||||
'refs/tags/' and 'refs/remotes/' will not be printed. If 'full' is
|
||||
specified, the full ref name (including prefix) will be printed.
|
||||
If 'auto' is specified, then if the output is going to a terminal,
|
||||
the ref names are shown as if 'short' were given, otherwise no ref
|
||||
names are shown. This is the same as the `--decorate` option
|
||||
of the `git log`.
|
||||
|
||||
log.follow::
|
||||
If `true`, `git log` will act as if the `--follow` option was used when
|
||||
a single <path> is given. This has the same limitations as `--follow`,
|
||||
i.e. it cannot be used to follow multiple files and does not work well
|
||||
on non-linear history.
|
||||
|
||||
log.graphColors::
|
||||
A list of colors, separated by commas, that can be used to draw
|
||||
history lines in `git log --graph`.
|
||||
|
||||
log.showRoot::
|
||||
If true, the initial commit will be shown as a big creation event.
|
||||
This is equivalent to a diff against an empty tree.
|
||||
Tools like linkgit:git-log[1] or linkgit:git-whatchanged[1], which
|
||||
normally hide the root commit will now show it. True by default.
|
||||
|
||||
log.showSignature::
|
||||
If true, makes linkgit:git-log[1], linkgit:git-show[1], and
|
||||
linkgit:git-whatchanged[1] assume `--show-signature`.
|
||||
|
||||
log.mailmap::
|
||||
If true, makes linkgit:git-log[1], linkgit:git-show[1], and
|
||||
linkgit:git-whatchanged[1] assume `--use-mailmap`.
|
6
Documentation/config/mailinfo.txt
Normal file
6
Documentation/config/mailinfo.txt
Normal file
@ -0,0 +1,6 @@
|
||||
mailinfo.scissors::
|
||||
If true, makes linkgit:git-mailinfo[1] (and therefore
|
||||
linkgit:git-am[1]) act by default as if the --scissors option
|
||||
was provided on the command-line. When active, this features
|
||||
removes everything from the message body before a scissors
|
||||
line (i.e. consisting mainly of ">8", "8<" and "-").
|
15
Documentation/config/mailmap.txt
Normal file
15
Documentation/config/mailmap.txt
Normal file
@ -0,0 +1,15 @@
|
||||
mailmap.file::
|
||||
The location of an augmenting mailmap file. The default
|
||||
mailmap, located in the root of the repository, is loaded
|
||||
first, then the mailmap file pointed to by this variable.
|
||||
The location of the mailmap file may be in a repository
|
||||
subdirectory, or somewhere outside of the repository itself.
|
||||
See linkgit:git-shortlog[1] and linkgit:git-blame[1].
|
||||
|
||||
mailmap.blob::
|
||||
Like `mailmap.file`, but consider the value as a reference to a
|
||||
blob in the repository. If both `mailmap.file` and
|
||||
`mailmap.blob` are given, both are parsed, with entries from
|
||||
`mailmap.file` taking precedence. In a bare repository, this
|
||||
defaults to `HEAD:.mailmap`. In a non-bare repository, it
|
||||
defaults to empty.
|
12
Documentation/config/man.txt
Normal file
12
Documentation/config/man.txt
Normal file
@ -0,0 +1,12 @@
|
||||
man.viewer::
|
||||
Specify the programs that may be used to display help in the
|
||||
'man' format. See linkgit:git-help[1].
|
||||
|
||||
man.<tool>.cmd::
|
||||
Specify the command to invoke the specified man viewer. The
|
||||
specified command is evaluated in shell with the man page
|
||||
passed as argument. (See linkgit:git-help[1].)
|
||||
|
||||
man.<tool>.path::
|
||||
Override the path for the given tool that may be used to
|
||||
display help in the 'man' format. See linkgit:git-help[1].
|
@ -30,7 +30,7 @@ merge.verifySignatures::
|
||||
If true, this is equivalent to the --verify-signatures command
|
||||
line option. See linkgit:git-merge[1] for details.
|
||||
|
||||
include::fmt-merge-msg-config.txt[]
|
||||
include::fmt-merge-msg.txt[]
|
||||
|
||||
merge.renameLimit::
|
||||
The number of files to consider when performing rename detection
|
||||
@ -69,7 +69,7 @@ merge.guitool::
|
||||
Any other value is treated as a custom merge tool and requires that a
|
||||
corresponding mergetool.<guitool>.cmd variable is defined.
|
||||
|
||||
include::mergetools-merge.txt[]
|
||||
include::../mergetools-merge.txt[]
|
||||
|
||||
merge.verbosity::
|
||||
Controls the amount of output shown by the recursive merge
|
53
Documentation/config/mergetool.txt
Normal file
53
Documentation/config/mergetool.txt
Normal file
@ -0,0 +1,53 @@
|
||||
mergetool.<tool>.path::
|
||||
Override the path for the given tool. This is useful in case
|
||||
your tool is not in the PATH.
|
||||
|
||||
mergetool.<tool>.cmd::
|
||||
Specify the command to invoke the specified merge tool. The
|
||||
specified command is evaluated in shell with the following
|
||||
variables available: 'BASE' is the name of a temporary file
|
||||
containing the common base of the files to be merged, if available;
|
||||
'LOCAL' is the name of a temporary file containing the contents of
|
||||
the file on the current branch; 'REMOTE' is the name of a temporary
|
||||
file containing the contents of the file from the branch being
|
||||
merged; 'MERGED' contains the name of the file to which the merge
|
||||
tool should write the results of a successful merge.
|
||||
|
||||
mergetool.<tool>.trustExitCode::
|
||||
For a custom merge command, specify whether the exit code of
|
||||
the merge command can be used to determine whether the merge was
|
||||
successful. If this is not set to true then the merge target file
|
||||
timestamp is checked and the merge assumed to have been successful
|
||||
if the file has been updated, otherwise the user is prompted to
|
||||
indicate the success of the merge.
|
||||
|
||||
mergetool.meld.hasOutput::
|
||||
Older versions of `meld` do not support the `--output` option.
|
||||
Git will attempt to detect whether `meld` supports `--output`
|
||||
by inspecting the output of `meld --help`. Configuring
|
||||
`mergetool.meld.hasOutput` will make Git skip these checks and
|
||||
use the configured value instead. Setting `mergetool.meld.hasOutput`
|
||||
to `true` tells Git to unconditionally use the `--output` option,
|
||||
and `false` avoids using `--output`.
|
||||
|
||||
mergetool.keepBackup::
|
||||
After performing a merge, the original file with conflict markers
|
||||
can be saved as a file with a `.orig` extension. If this variable
|
||||
is set to `false` then this file is not preserved. Defaults to
|
||||
`true` (i.e. keep the backup files).
|
||||
|
||||
mergetool.keepTemporaries::
|
||||
When invoking a custom merge tool, Git uses a set of temporary
|
||||
files to pass to the tool. If the tool returns an error and this
|
||||
variable is set to `true`, then these temporary files will be
|
||||
preserved, otherwise they will be removed after the tool has
|
||||
exited. Defaults to `false`.
|
||||
|
||||
mergetool.writeToTemp::
|
||||
Git writes temporary 'BASE', 'LOCAL', and 'REMOTE' versions of
|
||||
conflicting files in the worktree by default. Git will attempt
|
||||
to use a temporary directory for these files when set `true`.
|
||||
Defaults to `false`.
|
||||
|
||||
mergetool.prompt::
|
||||
Prompt before each invocation of the merge resolution program.
|
59
Documentation/config/notes.txt
Normal file
59
Documentation/config/notes.txt
Normal file
@ -0,0 +1,59 @@
|
||||
notes.mergeStrategy::
|
||||
Which merge strategy to choose by default when resolving notes
|
||||
conflicts. Must be one of `manual`, `ours`, `theirs`, `union`, or
|
||||
`cat_sort_uniq`. Defaults to `manual`. See "NOTES MERGE STRATEGIES"
|
||||
section of linkgit:git-notes[1] for more information on each strategy.
|
||||
|
||||
notes.<name>.mergeStrategy::
|
||||
Which merge strategy to choose when doing a notes merge into
|
||||
refs/notes/<name>. This overrides the more general
|
||||
"notes.mergeStrategy". See the "NOTES MERGE STRATEGIES" section in
|
||||
linkgit:git-notes[1] for more information on the available strategies.
|
||||
|
||||
notes.displayRef::
|
||||
The (fully qualified) refname from which to show notes when
|
||||
showing commit messages. The value of this variable can be set
|
||||
to a glob, in which case notes from all matching refs will be
|
||||
shown. You may also specify this configuration variable
|
||||
several times. A warning will be issued for refs that do not
|
||||
exist, but a glob that does not match any refs is silently
|
||||
ignored.
|
||||
+
|
||||
This setting can be overridden with the `GIT_NOTES_DISPLAY_REF`
|
||||
environment variable, which must be a colon separated list of refs or
|
||||
globs.
|
||||
+
|
||||
The effective value of "core.notesRef" (possibly overridden by
|
||||
GIT_NOTES_REF) is also implicitly added to the list of refs to be
|
||||
displayed.
|
||||
|
||||
notes.rewrite.<command>::
|
||||
When rewriting commits with <command> (currently `amend` or
|
||||
`rebase`) and this variable is set to `true`, Git
|
||||
automatically copies your notes from the original to the
|
||||
rewritten commit. Defaults to `true`, but see
|
||||
"notes.rewriteRef" below.
|
||||
|
||||
notes.rewriteMode::
|
||||
When copying notes during a rewrite (see the
|
||||
"notes.rewrite.<command>" option), determines what to do if
|
||||
the target commit already has a note. Must be one of
|
||||
`overwrite`, `concatenate`, `cat_sort_uniq`, or `ignore`.
|
||||
Defaults to `concatenate`.
|
||||
+
|
||||
This setting can be overridden with the `GIT_NOTES_REWRITE_MODE`
|
||||
environment variable.
|
||||
|
||||
notes.rewriteRef::
|
||||
When copying notes during a rewrite, specifies the (fully
|
||||
qualified) ref whose notes should be copied. The ref may be a
|
||||
glob, in which case notes in all matching refs will be copied.
|
||||
You may also specify this configuration several times.
|
||||
+
|
||||
Does not have a default value; you must configure this variable to
|
||||
enable note rewriting. Set it to `refs/notes/commits` to enable
|
||||
rewriting for the default commit notes.
|
||||
+
|
||||
This setting can be overridden with the `GIT_NOTES_REWRITE_REF`
|
||||
environment variable, which must be a colon separated list of refs or
|
||||
globs.
|
120
Documentation/config/pack.txt
Normal file
120
Documentation/config/pack.txt
Normal file
@ -0,0 +1,120 @@
|
||||
pack.window::
|
||||
The size of the window used by linkgit:git-pack-objects[1] when no
|
||||
window size is given on the command line. Defaults to 10.
|
||||
|
||||
pack.depth::
|
||||
The maximum delta depth used by linkgit:git-pack-objects[1] when no
|
||||
maximum depth is given on the command line. Defaults to 50.
|
||||
Maximum value is 4095.
|
||||
|
||||
pack.windowMemory::
|
||||
The maximum size of memory that is consumed by each thread
|
||||
in linkgit:git-pack-objects[1] for pack window memory when
|
||||
no limit is given on the command line. The value can be
|
||||
suffixed with "k", "m", or "g". When left unconfigured (or
|
||||
set explicitly to 0), there will be no limit.
|
||||
|
||||
pack.compression::
|
||||
An integer -1..9, indicating the compression level for objects
|
||||
in a pack file. -1 is the zlib default. 0 means no
|
||||
compression, and 1..9 are various speed/size tradeoffs, 9 being
|
||||
slowest. If not set, defaults to core.compression. If that is
|
||||
not set, defaults to -1, the zlib default, which is "a default
|
||||
compromise between speed and compression (currently equivalent
|
||||
to level 6)."
|
||||
+
|
||||
Note that changing the compression level will not automatically recompress
|
||||
all existing objects. You can force recompression by passing the -F option
|
||||
to linkgit:git-repack[1].
|
||||
|
||||
pack.island::
|
||||
An extended regular expression configuring a set of delta
|
||||
islands. See "DELTA ISLANDS" in linkgit:git-pack-objects[1]
|
||||
for details.
|
||||
|
||||
pack.islandCore::
|
||||
Specify an island name which gets to have its objects be
|
||||
packed first. This creates a kind of pseudo-pack at the front
|
||||
of one pack, so that the objects from the specified island are
|
||||
hopefully faster to copy into any pack that should be served
|
||||
to a user requesting these objects. In practice this means
|
||||
that the island specified should likely correspond to what is
|
||||
the most commonly cloned in the repo. See also "DELTA ISLANDS"
|
||||
in linkgit:git-pack-objects[1].
|
||||
|
||||
pack.deltaCacheSize::
|
||||
The maximum memory in bytes used for caching deltas in
|
||||
linkgit:git-pack-objects[1] before writing them out to a pack.
|
||||
This cache is used to speed up the writing object phase by not
|
||||
having to recompute the final delta result once the best match
|
||||
for all objects is found. Repacking large repositories on machines
|
||||
which are tight with memory might be badly impacted by this though,
|
||||
especially if this cache pushes the system into swapping.
|
||||
A value of 0 means no limit. The smallest size of 1 byte may be
|
||||
used to virtually disable this cache. Defaults to 256 MiB.
|
||||
|
||||
pack.deltaCacheLimit::
|
||||
The maximum size of a delta, that is cached in
|
||||
linkgit:git-pack-objects[1]. This cache is used to speed up the
|
||||
writing object phase by not having to recompute the final delta
|
||||
result once the best match for all objects is found.
|
||||
Defaults to 1000. Maximum value is 65535.
|
||||
|
||||
pack.threads::
|
||||
Specifies the number of threads to spawn when searching for best
|
||||
delta matches. This requires that linkgit:git-pack-objects[1]
|
||||
be compiled with pthreads otherwise this option is ignored with a
|
||||
warning. This is meant to reduce packing time on multiprocessor
|
||||
machines. The required amount of memory for the delta search window
|
||||
is however multiplied by the number of threads.
|
||||
Specifying 0 will cause Git to auto-detect the number of CPU's
|
||||
and set the number of threads accordingly.
|
||||
|
||||
pack.indexVersion::
|
||||
Specify the default pack index version. Valid values are 1 for
|
||||
legacy pack index used by Git versions prior to 1.5.2, and 2 for
|
||||
the new pack index with capabilities for packs larger than 4 GB
|
||||
as well as proper protection against the repacking of corrupted
|
||||
packs. Version 2 is the default. Note that version 2 is enforced
|
||||
and this config option ignored whenever the corresponding pack is
|
||||
larger than 2 GB.
|
||||
+
|
||||
If you have an old Git that does not understand the version 2 `*.idx` file,
|
||||
cloning or fetching over a non native protocol (e.g. "http")
|
||||
that will copy both `*.pack` file and corresponding `*.idx` file from the
|
||||
other side may give you a repository that cannot be accessed with your
|
||||
older version of Git. If the `*.pack` file is smaller than 2 GB, however,
|
||||
you can use linkgit:git-index-pack[1] on the *.pack file to regenerate
|
||||
the `*.idx` file.
|
||||
|
||||
pack.packSizeLimit::
|
||||
The maximum size of a pack. This setting only affects
|
||||
packing to a file when repacking, i.e. the git:// protocol
|
||||
is unaffected. It can be overridden by the `--max-pack-size`
|
||||
option of linkgit:git-repack[1]. Reaching this limit results
|
||||
in the creation of multiple packfiles; which in turn prevents
|
||||
bitmaps from being created.
|
||||
The minimum size allowed is limited to 1 MiB.
|
||||
The default is unlimited.
|
||||
Common unit suffixes of 'k', 'm', or 'g' are
|
||||
supported.
|
||||
|
||||
pack.useBitmaps::
|
||||
When true, git will use pack bitmaps (if available) when packing
|
||||
to stdout (e.g., during the server side of a fetch). Defaults to
|
||||
true. You should not generally need to turn this off unless
|
||||
you are debugging pack bitmaps.
|
||||
|
||||
pack.writeBitmaps (deprecated)::
|
||||
This is a deprecated synonym for `repack.writeBitmaps`.
|
||||
|
||||
pack.writeBitmapHashCache::
|
||||
When true, git will include a "hash cache" section in the bitmap
|
||||
index (if one is written). This cache can be used to feed git's
|
||||
delta heuristics, potentially leading to better deltas between
|
||||
bitmapped and non-bitmapped objects (e.g., when serving a fetch
|
||||
between an older, bitmapped pack and objects that have been
|
||||
pushed since the last gc). The downside is that it consumes 4
|
||||
bytes per object of disk space, and that JGit's bitmap
|
||||
implementation does not understand it, causing it to complain if
|
||||
Git and JGit are used on the same repository. Defaults to false.
|
8
Documentation/config/pager.txt
Normal file
8
Documentation/config/pager.txt
Normal file
@ -0,0 +1,8 @@
|
||||
pager.<cmd>::
|
||||
If the value is boolean, turns on or off pagination of the
|
||||
output of a particular Git subcommand when writing to a tty.
|
||||
Otherwise, turns on pagination for the subcommand using the
|
||||
pager specified by the value of `pager.<cmd>`. If `--paginate`
|
||||
or `--no-pager` is specified on the command line, it takes
|
||||
precedence over this option. To disable pagination for all
|
||||
commands, set `core.pager` or `GIT_PAGER` to `cat`.
|
9
Documentation/config/pretty.txt
Normal file
9
Documentation/config/pretty.txt
Normal file
@ -0,0 +1,9 @@
|
||||
pretty.<name>::
|
||||
Alias for a --pretty= format string, as specified in
|
||||
linkgit:git-log[1]. Any aliases defined here can be used just
|
||||
as the built-in pretty formats could. For example,
|
||||
running `git config pretty.changelog "format:* %H %s"`
|
||||
would cause the invocation `git log --pretty=changelog`
|
||||
to be equivalent to running `git log "--pretty=format:* %H %s"`.
|
||||
Note that an alias with the same name as a built-in format
|
||||
will be silently ignored.
|
64
Documentation/config/protocol.txt
Normal file
64
Documentation/config/protocol.txt
Normal file
@ -0,0 +1,64 @@
|
||||
protocol.allow::
|
||||
If set, provide a user defined default policy for all protocols which
|
||||
don't explicitly have a policy (`protocol.<name>.allow`). By default,
|
||||
if unset, known-safe protocols (http, https, git, ssh, file) have a
|
||||
default policy of `always`, known-dangerous protocols (ext) have a
|
||||
default policy of `never`, and all other protocols have a default
|
||||
policy of `user`. Supported policies:
|
||||
+
|
||||
--
|
||||
|
||||
* `always` - protocol is always able to be used.
|
||||
|
||||
* `never` - protocol is never able to be used.
|
||||
|
||||
* `user` - protocol is only able to be used when `GIT_PROTOCOL_FROM_USER` is
|
||||
either unset or has a value of 1. This policy should be used when you want a
|
||||
protocol to be directly usable by the user but don't want it used by commands which
|
||||
execute clone/fetch/push commands without user input, e.g. recursive
|
||||
submodule initialization.
|
||||
|
||||
--
|
||||
|
||||
protocol.<name>.allow::
|
||||
Set a policy to be used by protocol `<name>` with clone/fetch/push
|
||||
commands. See `protocol.allow` above for the available policies.
|
||||
+
|
||||
The protocol names currently used by git are:
|
||||
+
|
||||
--
|
||||
- `file`: any local file-based path (including `file://` URLs,
|
||||
or local paths)
|
||||
|
||||
- `git`: the anonymous git protocol over a direct TCP
|
||||
connection (or proxy, if configured)
|
||||
|
||||
- `ssh`: git over ssh (including `host:path` syntax,
|
||||
`ssh://`, etc).
|
||||
|
||||
- `http`: git over http, both "smart http" and "dumb http".
|
||||
Note that this does _not_ include `https`; if you want to configure
|
||||
both, you must do so individually.
|
||||
|
||||
- any external helpers are named by their protocol (e.g., use
|
||||
`hg` to allow the `git-remote-hg` helper)
|
||||
--
|
||||
|
||||
protocol.version::
|
||||
Experimental. If set, clients will attempt to communicate with a
|
||||
server using the specified protocol version. If unset, no
|
||||
attempt will be made by the client to communicate using a
|
||||
particular protocol version, this results in protocol version 0
|
||||
being used.
|
||||
Supported versions:
|
||||
+
|
||||
--
|
||||
|
||||
* `0` - the original wire protocol.
|
||||
|
||||
* `1` - the original wire protocol with the addition of a version string
|
||||
in the initial response from the server.
|
||||
|
||||
* `2` - link:technical/protocol-v2.html[wire protocol version 2].
|
||||
|
||||
--
|
78
Documentation/config/remote.txt
Normal file
78
Documentation/config/remote.txt
Normal file
@ -0,0 +1,78 @@
|
||||
remote.pushDefault::
|
||||
The remote to push to by default. Overrides
|
||||
`branch.<name>.remote` for all branches, and is overridden by
|
||||
`branch.<name>.pushRemote` for specific branches.
|
||||
|
||||
remote.<name>.url::
|
||||
The URL of a remote repository. See linkgit:git-fetch[1] or
|
||||
linkgit:git-push[1].
|
||||
|
||||
remote.<name>.pushurl::
|
||||
The push URL of a remote repository. See linkgit:git-push[1].
|
||||
|
||||
remote.<name>.proxy::
|
||||
For remotes that require curl (http, https and ftp), the URL to
|
||||
the proxy to use for that remote. Set to the empty string to
|
||||
disable proxying for that remote.
|
||||
|
||||
remote.<name>.proxyAuthMethod::
|
||||
For remotes that require curl (http, https and ftp), the method to use for
|
||||
authenticating against the proxy in use (probably set in
|
||||
`remote.<name>.proxy`). See `http.proxyAuthMethod`.
|
||||
|
||||
remote.<name>.fetch::
|
||||
The default set of "refspec" for linkgit:git-fetch[1]. See
|
||||
linkgit:git-fetch[1].
|
||||
|
||||
remote.<name>.push::
|
||||
The default set of "refspec" for linkgit:git-push[1]. See
|
||||
linkgit:git-push[1].
|
||||
|
||||
remote.<name>.mirror::
|
||||
If true, pushing to this remote will automatically behave
|
||||
as if the `--mirror` option was given on the command line.
|
||||
|
||||
remote.<name>.skipDefaultUpdate::
|
||||
If true, this remote will be skipped by default when updating
|
||||
using linkgit:git-fetch[1] or the `update` subcommand of
|
||||
linkgit:git-remote[1].
|
||||
|
||||
remote.<name>.skipFetchAll::
|
||||
If true, this remote will be skipped by default when updating
|
||||
using linkgit:git-fetch[1] or the `update` subcommand of
|
||||
linkgit:git-remote[1].
|
||||
|
||||
remote.<name>.receivepack::
|
||||
The default program to execute on the remote side when pushing. See
|
||||
option --receive-pack of linkgit:git-push[1].
|
||||
|
||||
remote.<name>.uploadpack::
|
||||
The default program to execute on the remote side when fetching. See
|
||||
option --upload-pack of linkgit:git-fetch-pack[1].
|
||||
|
||||
remote.<name>.tagOpt::
|
||||
Setting this value to --no-tags disables automatic tag following when
|
||||
fetching from remote <name>. Setting it to --tags will fetch every
|
||||
tag from remote <name>, even if they are not reachable from remote
|
||||
branch heads. Passing these flags directly to linkgit:git-fetch[1] can
|
||||
override this setting. See options --tags and --no-tags of
|
||||
linkgit:git-fetch[1].
|
||||
|
||||
remote.<name>.vcs::
|
||||
Setting this to a value <vcs> will cause Git to interact with
|
||||
the remote with the git-remote-<vcs> helper.
|
||||
|
||||
remote.<name>.prune::
|
||||
When set to true, fetching from this remote by default will also
|
||||
remove any remote-tracking references that no longer exist on the
|
||||
remote (as if the `--prune` option was given on the command line).
|
||||
Overrides `fetch.prune` settings, if any.
|
||||
|
||||
remote.<name>.pruneTags::
|
||||
When set to true, fetching from this remote by default will also
|
||||
remove any local tags that no longer exist on the remote if pruning
|
||||
is activated in general via `remote.<name>.prune`, `fetch.prune` or
|
||||
`--prune`. Overrides `fetch.pruneTags` settings, if any.
|
||||
+
|
||||
See also `remote.<name>.prune` and the PRUNING section of
|
||||
linkgit:git-fetch[1].
|
3
Documentation/config/remotes.txt
Normal file
3
Documentation/config/remotes.txt
Normal file
@ -0,0 +1,3 @@
|
||||
remotes.<group>::
|
||||
The list of remotes which are fetched by "git remote update
|
||||
<group>". See linkgit:git-remote[1].
|
27
Documentation/config/repack.txt
Normal file
27
Documentation/config/repack.txt
Normal file
@ -0,0 +1,27 @@
|
||||
repack.useDeltaBaseOffset::
|
||||
By default, linkgit:git-repack[1] creates packs that use
|
||||
delta-base offset. If you need to share your repository with
|
||||
Git older than version 1.4.4, either directly or via a dumb
|
||||
protocol such as http, then you need to set this option to
|
||||
"false" and repack. Access from old Git versions over the
|
||||
native protocol are unaffected by this option.
|
||||
|
||||
repack.packKeptObjects::
|
||||
If set to true, makes `git repack` act as if
|
||||
`--pack-kept-objects` was passed. See linkgit:git-repack[1] for
|
||||
details. Defaults to `false` normally, but `true` if a bitmap
|
||||
index is being written (either via `--write-bitmap-index` or
|
||||
`repack.writeBitmaps`).
|
||||
|
||||
repack.useDeltaIslands::
|
||||
If set to true, makes `git repack` act as if `--delta-islands`
|
||||
was passed. Defaults to `false`.
|
||||
|
||||
repack.writeBitmaps::
|
||||
When true, git will write a bitmap index when packing all
|
||||
objects to disk (e.g., when `git repack -a` is run). This
|
||||
index can speed up the "counting objects" phase of subsequent
|
||||
packs created for clones and fetches, at the cost of some disk
|
||||
space and extra time spent on the initial repack. This has
|
||||
no effect if multiple packfiles are created.
|
||||
Defaults to false.
|
12
Documentation/config/rerere.txt
Normal file
12
Documentation/config/rerere.txt
Normal file
@ -0,0 +1,12 @@
|
||||
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 be
|
||||
encountered again. By default, linkgit:git-rerere[1] is
|
||||
enabled if there is an `rr-cache` directory under the
|
||||
`$GIT_DIR`, e.g. if "rerere" was previously used in the
|
||||
repository.
|
2
Documentation/config/reset.txt
Normal file
2
Documentation/config/reset.txt
Normal file
@ -0,0 +1,2 @@
|
||||
reset.quiet::
|
||||
When set to true, 'git reset' will default to the '--quiet' option.
|
5
Documentation/config/sequencer.txt
Normal file
5
Documentation/config/sequencer.txt
Normal file
@ -0,0 +1,5 @@
|
||||
sequence.editor::
|
||||
Text editor used by `git rebase -i` for editing the rebase instruction file.
|
||||
The value is meant to be interpreted by the shell when it is used.
|
||||
It can be overridden by the `GIT_SEQUENCE_EDITOR` environment variable.
|
||||
When not configured the default commit message editor is used instead.
|
3
Documentation/config/showbranch.txt
Normal file
3
Documentation/config/showbranch.txt
Normal file
@ -0,0 +1,3 @@
|
||||
showBranch.default::
|
||||
The default set of branches for linkgit:git-show-branch[1].
|
||||
See linkgit:git-show-branch[1].
|
24
Documentation/config/splitindex.txt
Normal file
24
Documentation/config/splitindex.txt
Normal file
@ -0,0 +1,24 @@
|
||||
splitIndex.maxPercentChange::
|
||||
When the split index feature is used, this specifies the
|
||||
percent of entries the split index can contain compared to the
|
||||
total number of entries in both the split index and the shared
|
||||
index before a new shared index is written.
|
||||
The value should be between 0 and 100. If the value is 0 then
|
||||
a new shared index is always written, if it is 100 a new
|
||||
shared index is never written.
|
||||
By default the value is 20, so a new shared index is written
|
||||
if the number of entries in the split index would be greater
|
||||
than 20 percent of the total number of entries.
|
||||
See linkgit:git-update-index[1].
|
||||
|
||||
splitIndex.sharedIndexExpire::
|
||||
When the split index feature is used, shared index files that
|
||||
were not modified since the time this variable specifies will
|
||||
be removed when a new shared index file is created. The value
|
||||
"now" expires all entries immediately, and "never" suppresses
|
||||
expiration altogether.
|
||||
The default value is "2.weeks.ago".
|
||||
Note that a shared index file is considered modified (for the
|
||||
purpose of expiration) each time a new split-index file is
|
||||
either created based on it or read from it.
|
||||
See linkgit:git-update-index[1].
|
35
Documentation/config/ssh.txt
Normal file
35
Documentation/config/ssh.txt
Normal file
@ -0,0 +1,35 @@
|
||||
ssh.variant::
|
||||
By default, Git determines the command line arguments to use
|
||||
based on the basename of the configured SSH command (configured
|
||||
using the environment variable `GIT_SSH` or `GIT_SSH_COMMAND` or
|
||||
the config setting `core.sshCommand`). If the basename is
|
||||
unrecognized, Git will attempt to detect support of OpenSSH
|
||||
options by first invoking the configured SSH command with the
|
||||
`-G` (print configuration) option and will subsequently use
|
||||
OpenSSH options (if that is successful) or no options besides
|
||||
the host and remote command (if it fails).
|
||||
+
|
||||
The config variable `ssh.variant` can be set to override this detection.
|
||||
Valid values are `ssh` (to use OpenSSH options), `plink`, `putty`,
|
||||
`tortoiseplink`, `simple` (no options except the host and remote command).
|
||||
The default auto-detection can be explicitly requested using the value
|
||||
`auto`. Any other value is treated as `ssh`. This setting can also be
|
||||
overridden via the environment variable `GIT_SSH_VARIANT`.
|
||||
+
|
||||
The current command-line parameters used for each variant are as
|
||||
follows:
|
||||
+
|
||||
--
|
||||
|
||||
* `ssh` - [-p port] [-4] [-6] [-o option] [username@]host command
|
||||
|
||||
* `simple` - [username@]host command
|
||||
|
||||
* `plink` or `putty` - [-P port] [-4] [-6] [username@]host command
|
||||
|
||||
* `tortoiseplink` - [-P port] [-4] [-6] -batch [username@]host command
|
||||
|
||||
--
|
||||
+
|
||||
Except for the `simple` variant, command-line parameters are likely to
|
||||
change as git gains new features.
|
9
Documentation/config/stash.txt
Normal file
9
Documentation/config/stash.txt
Normal file
@ -0,0 +1,9 @@
|
||||
stash.showPatch::
|
||||
If this is set to true, the `git stash show` command without an
|
||||
option will show the stash entry in patch form. Defaults to false.
|
||||
See description of 'show' command in linkgit:git-stash[1].
|
||||
|
||||
stash.showStat::
|
||||
If this is set to true, the `git stash show` command without an
|
||||
option will show diffstat of the stash entry. Defaults to true.
|
||||
See description of 'show' command in linkgit:git-stash[1].
|
72
Documentation/config/status.txt
Normal file
72
Documentation/config/status.txt
Normal file
@ -0,0 +1,72 @@
|
||||
status.relativePaths::
|
||||
By default, linkgit:git-status[1] shows paths relative to the
|
||||
current directory. Setting this variable to `false` shows paths
|
||||
relative to the repository root (this was the default for Git
|
||||
prior to v1.5.4).
|
||||
|
||||
status.short::
|
||||
Set to true to enable --short by default in linkgit:git-status[1].
|
||||
The option --no-short takes precedence over this variable.
|
||||
|
||||
status.branch::
|
||||
Set to true to enable --branch by default in linkgit:git-status[1].
|
||||
The option --no-branch takes precedence over this variable.
|
||||
|
||||
status.displayCommentPrefix::
|
||||
If set to true, linkgit:git-status[1] will insert a comment
|
||||
prefix before each output line (starting with
|
||||
`core.commentChar`, i.e. `#` by default). This was the
|
||||
behavior of linkgit:git-status[1] in Git 1.8.4 and previous.
|
||||
Defaults to false.
|
||||
|
||||
status.renameLimit::
|
||||
The number of files to consider when performing rename detection
|
||||
in linkgit:git-status[1] and linkgit:git-commit[1]. Defaults to
|
||||
the value of diff.renameLimit.
|
||||
|
||||
status.renames::
|
||||
Whether and how Git detects renames in linkgit:git-status[1] and
|
||||
linkgit:git-commit[1] . If set to "false", rename detection is
|
||||
disabled. If set to "true", basic rename detection is enabled.
|
||||
If set to "copies" or "copy", Git will detect copies, as well.
|
||||
Defaults to the value of diff.renames.
|
||||
|
||||
status.showStash::
|
||||
If set to true, linkgit:git-status[1] will display the number of
|
||||
entries currently stashed away.
|
||||
Defaults to false.
|
||||
|
||||
status.showUntrackedFiles::
|
||||
By default, linkgit:git-status[1] and linkgit:git-commit[1] show
|
||||
files which are not currently tracked by Git. Directories which
|
||||
contain only untracked files, are shown with the directory name
|
||||
only. Showing untracked files means that Git needs to lstat() all
|
||||
the files in the whole repository, which might be slow on some
|
||||
systems. So, this variable controls how the commands displays
|
||||
the untracked files. Possible values are:
|
||||
+
|
||||
--
|
||||
* `no` - Show no untracked files.
|
||||
* `normal` - Show untracked files and directories.
|
||||
* `all` - Show also individual files in untracked directories.
|
||||
--
|
||||
+
|
||||
If this variable is not specified, it defaults to 'normal'.
|
||||
This variable can be overridden with the -u|--untracked-files option
|
||||
of linkgit:git-status[1] and linkgit:git-commit[1].
|
||||
|
||||
status.submoduleSummary::
|
||||
Defaults to false.
|
||||
If this is set to a non zero number or true (identical to -1 or an
|
||||
unlimited number), the submodule summary will be enabled and a
|
||||
summary of commits for modified submodules will be shown (see
|
||||
--summary-limit option of linkgit:git-submodule[1]). Please note
|
||||
that the summary output command will be suppressed for all
|
||||
submodules when `diff.ignoreSubmodules` is set to 'all' or only
|
||||
for those submodules where `submodule.<name>.ignore=all`. The only
|
||||
exception to that rule is that status and commit will show staged
|
||||
submodule changes. To
|
||||
also view the summary for ignored submodules you can either use
|
||||
the --ignore-submodules=dirty command-line option or the 'git
|
||||
submodule summary' command, which shows a similar output but does
|
||||
not honor these settings.
|
16
Documentation/config/tag.txt
Normal file
16
Documentation/config/tag.txt
Normal file
@ -0,0 +1,16 @@
|
||||
tag.forceSignAnnotated::
|
||||
A boolean to specify whether annotated tags created should be GPG signed.
|
||||
If `--annotate` is specified on the command line, it takes
|
||||
precedence over this option.
|
||||
|
||||
tag.sort::
|
||||
This variable controls the sort ordering of tags when displayed by
|
||||
linkgit:git-tag[1]. Without the "--sort=<value>" option provided, the
|
||||
value of this variable will be used as the default.
|
||||
|
||||
tar.umask::
|
||||
This variable can be used to restrict the permission bits of
|
||||
tar archive entries. The default is 0002, which turns off the
|
||||
world write bit. The special value "user" indicates that the
|
||||
archiving user's umask will be used instead. See umask(2) and
|
||||
linkgit:git-archive[1].
|
71
Documentation/config/transfer.txt
Normal file
71
Documentation/config/transfer.txt
Normal file
@ -0,0 +1,71 @@
|
||||
transfer.fsckObjects::
|
||||
When `fetch.fsckObjects` or `receive.fsckObjects` are
|
||||
not set, the value of this variable is used instead.
|
||||
Defaults to false.
|
||||
+
|
||||
When set, the fetch or receive will abort in the case of a malformed
|
||||
object or a link to a nonexistent object. In addition, various other
|
||||
issues are checked for, including legacy issues (see `fsck.<msg-id>`),
|
||||
and potential security issues like the existence of a `.GIT` directory
|
||||
or a malicious `.gitmodules` file (see the release notes for v2.2.1
|
||||
and v2.17.1 for details). Other sanity and security checks may be
|
||||
added in future releases.
|
||||
+
|
||||
On the receiving side, failing fsckObjects will make those objects
|
||||
unreachable, see "QUARANTINE ENVIRONMENT" in
|
||||
linkgit:git-receive-pack[1]. On the fetch side, malformed objects will
|
||||
instead be left unreferenced in the repository.
|
||||
+
|
||||
Due to the non-quarantine nature of the `fetch.fsckObjects`
|
||||
implementation it can not be relied upon to leave the object store
|
||||
clean like `receive.fsckObjects` can.
|
||||
+
|
||||
As objects are unpacked they're written to the object store, so there
|
||||
can be cases where malicious objects get introduced even though the
|
||||
"fetch" failed, only to have a subsequent "fetch" succeed because only
|
||||
new incoming objects are checked, not those that have already been
|
||||
written to the object store. That difference in behavior should not be
|
||||
relied upon. In the future, such objects may be quarantined for
|
||||
"fetch" as well.
|
||||
+
|
||||
For now, the paranoid need to find some way to emulate the quarantine
|
||||
environment if they'd like the same protection as "push". E.g. in the
|
||||
case of an internal mirror do the mirroring in two steps, one to fetch
|
||||
the untrusted objects, and then do a second "push" (which will use the
|
||||
quarantine) to another internal repo, and have internal clients
|
||||
consume this pushed-to repository, or embargo internal fetches and
|
||||
only allow them once a full "fsck" has run (and no new fetches have
|
||||
happened in the meantime).
|
||||
|
||||
transfer.hideRefs::
|
||||
String(s) `receive-pack` and `upload-pack` use to decide which
|
||||
refs to omit from their initial advertisements. Use more than
|
||||
one definition to specify multiple prefix strings. A ref that is
|
||||
under the hierarchies listed in the value of this variable is
|
||||
excluded, and is hidden when responding to `git push` or `git
|
||||
fetch`. See `receive.hideRefs` and `uploadpack.hideRefs` for
|
||||
program-specific versions of this config.
|
||||
+
|
||||
You may also include a `!` in front of the ref name to negate the entry,
|
||||
explicitly exposing it, even if an earlier entry marked it as hidden.
|
||||
If you have multiple hideRefs values, later entries override earlier ones
|
||||
(and entries in more-specific config files override less-specific ones).
|
||||
+
|
||||
If a namespace is in use, the namespace prefix is stripped from each
|
||||
reference before it is matched against `transfer.hiderefs` patterns.
|
||||
For example, if `refs/heads/master` is specified in `transfer.hideRefs` and
|
||||
the current namespace is `foo`, then `refs/namespaces/foo/refs/heads/master`
|
||||
is omitted from the advertisements but `refs/heads/master` and
|
||||
`refs/namespaces/bar/refs/heads/master` are still advertised as so-called
|
||||
"have" lines. In order to match refs before stripping, add a `^` in front of
|
||||
the ref name. If you combine `!` and `^`, `!` must be specified first.
|
||||
+
|
||||
Even if you hide refs, a client may still be able to steal the target
|
||||
objects via the techniques described in the "SECURITY" section of the
|
||||
linkgit:gitnamespaces[7] man page; it's best to keep private data in a
|
||||
separate repository.
|
||||
|
||||
transfer.unpackLimit::
|
||||
When `fetch.unpackLimit` or `receive.unpackLimit` are
|
||||
not set, the value of this variable is used instead.
|
||||
The default value is 100.
|
6
Documentation/config/uploadarchive.txt
Normal file
6
Documentation/config/uploadarchive.txt
Normal file
@ -0,0 +1,6 @@
|
||||
uploadarchive.allowUnreachable::
|
||||
If true, allow clients to use `git archive --remote` to request
|
||||
any tree, whether reachable from the ref tips or not. See the
|
||||
discussion in the "SECURITY" section of
|
||||
linkgit:git-upload-archive[1] for more details. Defaults to
|
||||
`false`.
|
65
Documentation/config/uploadpack.txt
Normal file
65
Documentation/config/uploadpack.txt
Normal file
@ -0,0 +1,65 @@
|
||||
uploadpack.hideRefs::
|
||||
This variable is the same as `transfer.hideRefs`, but applies
|
||||
only to `upload-pack` (and so affects only fetches, not pushes).
|
||||
An attempt to fetch a hidden ref by `git fetch` will fail. See
|
||||
also `uploadpack.allowTipSHA1InWant`.
|
||||
|
||||
uploadpack.allowTipSHA1InWant::
|
||||
When `uploadpack.hideRefs` is in effect, allow `upload-pack`
|
||||
to accept a fetch request that asks for an object at the tip
|
||||
of a hidden ref (by default, such a request is rejected).
|
||||
See also `uploadpack.hideRefs`. Even if this is false, a client
|
||||
may be able to steal objects via the techniques described in the
|
||||
"SECURITY" section of the linkgit:gitnamespaces[7] man page; it's
|
||||
best to keep private data in a separate repository.
|
||||
|
||||
uploadpack.allowReachableSHA1InWant::
|
||||
Allow `upload-pack` to accept a fetch request that asks for an
|
||||
object that is reachable from any ref tip. However, note that
|
||||
calculating object reachability is computationally expensive.
|
||||
Defaults to `false`. Even if this is false, a client may be able
|
||||
to steal objects via the techniques described in the "SECURITY"
|
||||
section of the linkgit:gitnamespaces[7] man page; it's best to
|
||||
keep private data in a separate repository.
|
||||
|
||||
uploadpack.allowAnySHA1InWant::
|
||||
Allow `upload-pack` to accept a fetch request that asks for any
|
||||
object at all.
|
||||
Defaults to `false`.
|
||||
|
||||
uploadpack.keepAlive::
|
||||
When `upload-pack` has started `pack-objects`, there may be a
|
||||
quiet period while `pack-objects` prepares the pack. Normally
|
||||
it would output progress information, but if `--quiet` was used
|
||||
for the fetch, `pack-objects` will output nothing at all until
|
||||
the pack data begins. Some clients and networks may consider
|
||||
the server to be hung and give up. Setting this option instructs
|
||||
`upload-pack` to send an empty keepalive packet every
|
||||
`uploadpack.keepAlive` seconds. Setting this option to 0
|
||||
disables keepalive packets entirely. The default is 5 seconds.
|
||||
|
||||
uploadpack.packObjectsHook::
|
||||
If this option is set, when `upload-pack` would run
|
||||
`git pack-objects` to create a packfile for a client, it will
|
||||
run this shell command instead. The `pack-objects` command and
|
||||
arguments it _would_ have run (including the `git pack-objects`
|
||||
at the beginning) are appended to the shell command. The stdin
|
||||
and stdout of the hook are treated as if `pack-objects` itself
|
||||
was run. I.e., `upload-pack` will feed input intended for
|
||||
`pack-objects` to the hook, and expects a completed packfile on
|
||||
stdout.
|
||||
+
|
||||
Note that this configuration variable is ignored if it is seen in the
|
||||
repository-level config (this is a safety measure against fetching from
|
||||
untrusted repositories).
|
||||
|
||||
uploadpack.allowFilter::
|
||||
If this option is set, `upload-pack` will support partial
|
||||
clone and partial fetch object filtering.
|
||||
|
||||
uploadpack.allowRefInWant::
|
||||
If this option is set, `upload-pack` will support the `ref-in-want`
|
||||
feature of the protocol version 2 `fetch` command. This feature
|
||||
is intended for the benefit of load-balanced servers which may
|
||||
not have the same view of what OIDs their refs point to due to
|
||||
replication delay.
|
30
Documentation/config/url.txt
Normal file
30
Documentation/config/url.txt
Normal file
@ -0,0 +1,30 @@
|
||||
url.<base>.insteadOf::
|
||||
Any URL that starts with this value will be rewritten to
|
||||
start, instead, with <base>. In cases where some site serves a
|
||||
large number of repositories, and serves them with multiple
|
||||
access methods, and some users need to use different access
|
||||
methods, this feature allows people to specify any of the
|
||||
equivalent URLs and have Git automatically rewrite the URL to
|
||||
the best alternative for the particular user, even for a
|
||||
never-before-seen repository on the site. When more than one
|
||||
insteadOf strings match a given URL, the longest match is used.
|
||||
+
|
||||
Note that any protocol restrictions will be applied to the rewritten
|
||||
URL. If the rewrite changes the URL to use a custom protocol or remote
|
||||
helper, you may need to adjust the `protocol.*.allow` config to permit
|
||||
the request. In particular, protocols you expect to use for submodules
|
||||
must be set to `always` rather than the default of `user`. See the
|
||||
description of `protocol.allow` above.
|
||||
|
||||
url.<base>.pushInsteadOf::
|
||||
Any URL that starts with this value will not be pushed to;
|
||||
instead, it will be rewritten to start with <base>, and the
|
||||
resulting URL will be pushed to. In cases where some site serves
|
||||
a large number of repositories, and serves them with multiple
|
||||
access methods, some of which do not allow push, this feature
|
||||
allows people to specify a pull-only URL and have Git
|
||||
automatically use an appropriate URL to push, even for a
|
||||
never-before-seen repository on the site. When more than one
|
||||
pushInsteadOf strings match a given URL, the longest match is
|
||||
used. If a remote has an explicit pushurl, Git will ignore this
|
||||
setting for that remote.
|
26
Documentation/config/user.txt
Normal file
26
Documentation/config/user.txt
Normal file
@ -0,0 +1,26 @@
|
||||
user.email::
|
||||
Your email address to be recorded in any newly created commits.
|
||||
Can be overridden by the `GIT_AUTHOR_EMAIL`, `GIT_COMMITTER_EMAIL`, and
|
||||
`EMAIL` environment variables. See linkgit:git-commit-tree[1].
|
||||
|
||||
user.name::
|
||||
Your full name to be recorded in any newly created commits.
|
||||
Can be overridden by the `GIT_AUTHOR_NAME` and `GIT_COMMITTER_NAME`
|
||||
environment variables. See linkgit:git-commit-tree[1].
|
||||
|
||||
user.useConfigOnly::
|
||||
Instruct Git to avoid trying to guess defaults for `user.email`
|
||||
and `user.name`, and instead retrieve the values only from the
|
||||
configuration. For example, if you have multiple email addresses
|
||||
and would like to use a different one for each repository, then
|
||||
with this configuration option set to `true` in the global config
|
||||
along with a name, Git will prompt you to set up an email before
|
||||
making new commits in a newly cloned repository.
|
||||
Defaults to `false`.
|
||||
|
||||
user.signingKey::
|
||||
If linkgit:git-tag[1] or linkgit:git-commit[1] is not selecting the
|
||||
key you want it to automatically when creating a signed tag or
|
||||
commit, you can override the default selection with this variable.
|
||||
This option is passed unchanged to gpg's --local-user parameter,
|
||||
so you may specify a key using any method that gpg supports.
|
33
Documentation/config/versionsort.txt
Normal file
33
Documentation/config/versionsort.txt
Normal file
@ -0,0 +1,33 @@
|
||||
versionsort.prereleaseSuffix (deprecated)::
|
||||
Deprecated alias for `versionsort.suffix`. Ignored if
|
||||
`versionsort.suffix` is set.
|
||||
|
||||
versionsort.suffix::
|
||||
Even when version sort is used in linkgit:git-tag[1], tagnames
|
||||
with the same base version but different suffixes are still sorted
|
||||
lexicographically, resulting e.g. in prerelease tags appearing
|
||||
after the main release (e.g. "1.0-rc1" after "1.0"). This
|
||||
variable can be specified to determine the sorting order of tags
|
||||
with different suffixes.
|
||||
+
|
||||
By specifying a single suffix in this variable, any tagname containing
|
||||
that suffix will appear before the corresponding main release. E.g. if
|
||||
the variable is set to "-rc", then all "1.0-rcX" tags will appear before
|
||||
"1.0". If specified multiple times, once per suffix, then the order of
|
||||
suffixes in the configuration will determine the sorting order of tagnames
|
||||
with those suffixes. E.g. if "-pre" appears before "-rc" in the
|
||||
configuration, then all "1.0-preX" tags will be listed before any
|
||||
"1.0-rcX" tags. The placement of the main release tag relative to tags
|
||||
with various suffixes can be determined by specifying the empty suffix
|
||||
among those other suffixes. E.g. if the suffixes "-rc", "", "-ck" and
|
||||
"-bfs" appear in the configuration in this order, then all "v4.8-rcX" tags
|
||||
are listed first, followed by "v4.8", then "v4.8-ckX" and finally
|
||||
"v4.8-bfsX".
|
||||
+
|
||||
If more than one suffixes match the same tagname, then that tagname will
|
||||
be sorted according to the suffix which starts at the earliest position in
|
||||
the tagname. If more than one different matching suffixes start at
|
||||
that earliest position, then that tagname will be sorted according to the
|
||||
longest of those suffixes.
|
||||
The sorting order between different suffixes is undefined if they are
|
||||
in multiple config files.
|
4
Documentation/config/web.txt
Normal file
4
Documentation/config/web.txt
Normal file
@ -0,0 +1,4 @@
|
||||
web.browser::
|
||||
Specify a web browser that may be used by some commands.
|
||||
Currently only linkgit:git-instaweb[1] and linkgit:git-help[1]
|
||||
may use it.
|
9
Documentation/config/worktree.txt
Normal file
9
Documentation/config/worktree.txt
Normal file
@ -0,0 +1,9 @@
|
||||
worktree.guessRemote::
|
||||
With `add`, if no branch argument, and neither of `-b` nor
|
||||
`-B` nor `--detach` are given, the command defaults to
|
||||
creating a new branch from HEAD. If `worktree.guessRemote` is
|
||||
set to true, `worktree add` tries to find a remote-tracking
|
||||
branch whose name uniquely matches the new branch name. If
|
||||
such a branch exists, it is checked out and set as "upstream"
|
||||
for the new branch. If no such match can be found, it falls
|
||||
back to creating a new branch from the current HEAD.
|
@ -51,7 +51,7 @@ OPTIONS
|
||||
|
||||
CONFIGURATION
|
||||
-------------
|
||||
include::fmt-merge-msg-config.txt[]
|
||||
include::config/fmt-merge-msg.txt[]
|
||||
|
||||
merge.summary::
|
||||
Synonym to `merge.log`; this is deprecated and will be removed in
|
||||
|
@ -57,50 +57,7 @@ to appropriate values.
|
||||
Variables
|
||||
~~~~~~~~~
|
||||
|
||||
imap.folder::
|
||||
The folder to drop the mails into, which is typically the Drafts
|
||||
folder. For example: "INBOX.Drafts", "INBOX/Drafts" or
|
||||
"[Gmail]/Drafts". Required.
|
||||
|
||||
imap.tunnel::
|
||||
Command used to setup a tunnel to the IMAP server through which
|
||||
commands will be piped instead of using a direct network connection
|
||||
to the server. Required when imap.host is not set.
|
||||
|
||||
imap.host::
|
||||
A URL identifying the server. Use an `imap://` prefix for non-secure
|
||||
connections and an `imaps://` prefix for secure connections.
|
||||
Ignored when imap.tunnel is set, but required otherwise.
|
||||
|
||||
imap.user::
|
||||
The username to use when logging in to the server.
|
||||
|
||||
imap.pass::
|
||||
The password to use when logging in to the server.
|
||||
|
||||
imap.port::
|
||||
An integer port number to connect to on the server.
|
||||
Defaults to 143 for imap:// hosts and 993 for imaps:// hosts.
|
||||
Ignored when imap.tunnel is set.
|
||||
|
||||
imap.sslverify::
|
||||
A boolean to enable/disable verification of the server certificate
|
||||
used by the SSL/TLS connection. Default is `true`. Ignored when
|
||||
imap.tunnel is set.
|
||||
|
||||
imap.preformattedHTML::
|
||||
A boolean to enable/disable the use of html encoding when sending
|
||||
a patch. An html encoded patch will be bracketed with <pre>
|
||||
and have a content type of text/html. Ironically, enabling this
|
||||
option causes Thunderbird to send the patch as a plain/text,
|
||||
format=fixed email. Default is `false`.
|
||||
|
||||
imap.authMethod::
|
||||
Specify authenticate method for authentication with IMAP server.
|
||||
If Git was built with the NO_CURL option, or if your curl version is older
|
||||
than 7.34.0, or if you're running git-imap-send with the `--no-curl`
|
||||
option, the only supported method is 'CRAM-MD5'. If this is not set
|
||||
then 'git imap-send' uses the basic IMAP plaintext LOGIN command.
|
||||
include::config/imap.txt[]
|
||||
|
||||
Examples
|
||||
~~~~~~~~
|
||||
|
@ -342,7 +342,7 @@ include::merge-strategies.txt[]
|
||||
|
||||
CONFIGURATION
|
||||
-------------
|
||||
include::merge-config.txt[]
|
||||
include::config/merge.txt[]
|
||||
|
||||
branch.<name>.mergeOptions::
|
||||
Sets default options for merging into branch <name>. The syntax and
|
||||
|
@ -203,7 +203,7 @@ Alternatively, you can undo the 'git rebase' with
|
||||
CONFIGURATION
|
||||
-------------
|
||||
|
||||
include::rebase-config.txt[]
|
||||
include::config/rebase.txt[]
|
||||
|
||||
OPTIONS
|
||||
-------
|
||||
|
@ -95,7 +95,10 @@ OPTIONS
|
||||
|
||||
-q::
|
||||
--quiet::
|
||||
Be quiet, only report errors.
|
||||
--no-quiet::
|
||||
Be quiet, only report errors. The default behavior is set by the
|
||||
`reset.quiet` config option. `--quiet` and `--no-quiet` will
|
||||
override the default behavior.
|
||||
|
||||
|
||||
EXAMPLES
|
||||
|
2
Makefile
2
Makefile
@ -2070,7 +2070,7 @@ $(BUILT_INS): git$X
|
||||
|
||||
command-list.h: generate-cmdlist.sh command-list.txt
|
||||
|
||||
command-list.h: $(wildcard Documentation/git*.txt) Documentation/*config.txt
|
||||
command-list.h: $(wildcard Documentation/git*.txt) Documentation/*config.txt Documentation/config/*.txt
|
||||
$(QUIET_GEN)$(SHELL_PATH) ./generate-cmdlist.sh command-list.txt >$@+ && mv $@+ $@
|
||||
|
||||
SCRIPT_DEFINES = $(SHELL_PATH_SQ):$(DIFF_SQ):$(GIT_VERSION):\
|
||||
|
2
advice.c
2
advice.c
@ -12,6 +12,7 @@ int advice_push_needs_force = 1;
|
||||
int advice_status_hints = 1;
|
||||
int advice_status_u_option = 1;
|
||||
int advice_commit_before_merge = 1;
|
||||
int advice_reset_quiet_warning = 1;
|
||||
int advice_resolve_conflict = 1;
|
||||
int advice_implicit_identity = 1;
|
||||
int advice_detached_head = 1;
|
||||
@ -65,6 +66,7 @@ static struct {
|
||||
{ "statusHints", &advice_status_hints },
|
||||
{ "statusUoption", &advice_status_u_option },
|
||||
{ "commitBeforeMerge", &advice_commit_before_merge },
|
||||
{ "resetQuiet", &advice_reset_quiet_warning },
|
||||
{ "resolveConflict", &advice_resolve_conflict },
|
||||
{ "implicitIdentity", &advice_implicit_identity },
|
||||
{ "detachedHead", &advice_detached_head },
|
||||
|
1
advice.h
1
advice.h
@ -12,6 +12,7 @@ extern int advice_push_needs_force;
|
||||
extern int advice_status_hints;
|
||||
extern int advice_status_u_option;
|
||||
extern int advice_commit_before_merge;
|
||||
extern int advice_reset_quiet_warning;
|
||||
extern int advice_resolve_conflict;
|
||||
extern int advice_implicit_identity;
|
||||
extern int advice_detached_head;
|
||||
|
@ -25,6 +25,8 @@
|
||||
#include "submodule.h"
|
||||
#include "submodule-config.h"
|
||||
|
||||
#define REFRESH_INDEX_DELAY_WARNING_IN_MS (2 * 1000)
|
||||
|
||||
static const char * const git_reset_usage[] = {
|
||||
N_("git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [<commit>]"),
|
||||
N_("git reset [-q] [<tree-ish>] [--] <paths>..."),
|
||||
@ -307,6 +309,7 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
|
||||
};
|
||||
|
||||
git_config(git_reset_config, NULL);
|
||||
git_config_get_bool("reset.quiet", &quiet);
|
||||
|
||||
argc = parse_options(argc, argv, prefix, options, git_reset_usage,
|
||||
PARSE_OPT_KEEP_DASHDASH);
|
||||
@ -376,9 +379,19 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
|
||||
int flags = quiet ? REFRESH_QUIET : REFRESH_IN_PORCELAIN;
|
||||
if (read_from_tree(&pathspec, &oid, intent_to_add))
|
||||
return 1;
|
||||
if (get_git_work_tree())
|
||||
if (!quiet && get_git_work_tree()) {
|
||||
uint64_t t_begin, t_delta_in_ms;
|
||||
|
||||
t_begin = getnanotime();
|
||||
refresh_index(&the_index, flags, NULL, NULL,
|
||||
_("Unstaged changes after reset:"));
|
||||
t_delta_in_ms = (getnanotime() - t_begin) / 1000000;
|
||||
if (advice_reset_quiet_warning && t_delta_in_ms > REFRESH_INDEX_DELAY_WARNING_IN_MS) {
|
||||
printf(_("\nIt took %.2f seconds to enumerate unstaged changes after reset. You can\n"
|
||||
"use '--quiet' to avoid this. Set the config setting reset.quiet to true\n"
|
||||
"to make this the default.\n"), t_delta_in_ms / 1000.0);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
int err = reset_index(&oid, reset_type, quiet);
|
||||
if (reset_type == KEEP && !err)
|
||||
|
@ -80,7 +80,7 @@ print_config_list () {
|
||||
cat <<EOF
|
||||
static const char *config_name_list[] = {
|
||||
EOF
|
||||
grep -h '^[a-zA-Z].*\..*::$' Documentation/*config.txt |
|
||||
grep -h '^[a-zA-Z].*\..*::$' Documentation/*config.txt Documentation/config/*.txt |
|
||||
sed '/deprecated/d; s/::$//; s/, */\n/g' |
|
||||
sort |
|
||||
while read line
|
||||
|
Loading…
Reference in New Issue
Block a user