path: root/Documentation/config.txt
AgeCommit message (Collapse)Author
2008-03-02Merge branch 'mk/maint-parse-careful'Junio C Hamano
* mk/maint-parse-careful: receive-pack: use strict mode for unpacking objects index-pack: introduce checking mode unpack-objects: prevent writing of inconsistent objects unpack-object: cache for non written objects add common fsck error printing function builtin-fsck: move common object checking code to fsck.c builtin-fsck: reports missing parent commits Remove unused object-ref code builtin-fsck: move away from object-refs to fsck_walk add generic, type aware object chain walker Conflicts: Makefile builtin-fsck.c
2008-02-29receive-pack: use strict mode for unpacking objectsMartin Koegler
Signed-off-by: Martin Koegler <> Signed-off-by: Junio C Hamano <>
2008-02-27Merge branch 'js/branch-track'Junio C Hamano
* js/branch-track: doc: documentation update for the branch track changes branch: optionally setup branch.*.merge from upstream local branches Conflicts: Documentation/config.txt Documentation/git-branch.txt Documentation/git-checkout.txt builtin-branch.c cache.h t/
2008-02-27Merge branch 'db/host-alias'Junio C Hamano
* db/host-alias: url rewriting: take longest and first match Add support for url aliases in config files Use ALLOC_GROW in remote.{c,h}
2008-02-27Merge branch 'ae/pack-autothread'Junio C Hamano
* ae/pack-autothread: Revert "pack-objects: Print a message describing the number of threads for packing" pack-objects: Print a message describing the number of threads for packing pack-objects: Add runtime detection of online CPU's
2008-02-25url rewriting: take longest and first matchJunio C Hamano
Earlier we had a cop-out in the documentation to make the behaviour "undefined" if configuration had more than one insteadOf that would match the target URL, like this: [url "git://"] insteadOf = "" ; (1) insteadOf = "" ; (2) [url "/local/mirror/"] insteadOf = "" ; (3) insteadOf = "" ; (4) It would be most natural to take the longest and first match, i.e. - rewrite "" to "git://" by using (1), - rewrite "" to "/local/mirror/xyzzy" by favoring (3) over (1), and - rewrite "" to "git://" by favoring (2) over (4). Signed-off-by: Junio C Hamano <>
2008-02-25Add support for url aliases in config filesDaniel Barkalow
This allows users with different preferences for access methods to the same remote repositories to rewrite each other's URLs by pattern matching across a large set of similiarly set up repositories to each get the desired access. For example, if you don't have a account, you might want settings like: [url "git://"] insteadOf = Then, if you give git a URL like: it will act like you gave it: git:// and you can cut-and-paste pull requests in email without fixing them by hand, for example. Signed-off-by: Daniel Barkalow <> Signed-off-by: Junio C Hamano <>
2008-02-25Merge branch 'jc/apply-whitespace'Junio C Hamano
* jc/apply-whitespace: ws_fix_copy(): move the whitespace fixing function to ws.c apply: do not barf on patch with too large an offset core.whitespace: cr-at-eol git-apply --whitespace=fix: fix whitespace fuzz introduced by previous run builtin-apply.c: pass ws_rule down to match_fragment() builtin-apply.c: move copy_wsfix() function a bit higher. builtin-apply.c: do not feed copy_wsfix() leading '+' builtin-apply.c: simplify calling site to apply_line() builtin-apply.c: clean-up apply_one_fragment() builtin-apply.c: mark common context lines in lineinfo structure. builtin-apply.c: optimize match_beginning/end processing a bit. builtin-apply.c: make it more line oriented builtin-apply.c: push match-beginning/end logic down builtin-apply.c: restructure "offset" matching builtin-apply.c: refactor small part that matches context
2008-02-23pack-objects: Add runtime detection of online CPU'sAndreas Ericsson
Packing objects can be done in parallell nowadays, but it's only done if the config option pack.threads is set to a value above 1. Because of that, the code-path used is often not the most optimal one. This patch adds a routine to detect the number of online CPU's at runtime (online_cpus()). When pack.threads (or --threads=) is given a value of 0, the number of threads is set to the number of online CPU's. This feature is also documented. As per Nicolas Pitre's recommendations, the default is still to run pack-objects single-threaded unless explicitly activated, either by configuration or by command line parameter. The routine online_cpus() is a rework of "numcpus.c", written by one Philip Willoughby <>. numcpus.c is in the public domain and can presently be downloaded from Signed-off-by: Andreas Ericsson <> Signed-off-by: Brandon Casey <> Signed-off-by: Junio C Hamano <>
2008-02-20doc: documentation update for the branch track changesJay Soffian
Documents the branch.autosetupmerge=always setting and usage of --track when branching from a local branch. Signed-off-by: Jay Soffian <> Signed-off-by: Junio C Hamano <>
2008-02-18Add color.ui variable which globally enables colorization if setMatthias Kestenholz
Signed-off-by: Matthias Kestenholz <> Signed-off-by: Junio C Hamano <>
2008-02-17Merge branch 'sp/safecrlf'Junio C Hamano
* sp/safecrlf: safecrlf: Add mechanism to warn about irreversible crlf conversions
2008-02-11Merge branch 'maint'Junio C Hamano
* maint: (35 commits) config.c: guard config parser from value=NULL builtin-log.c: guard config parser from value=NULL imap-send.c: guard config parser from value=NULL wt-status.c: guard config parser from value=NULL setup.c: guard config parser from value=NULL remote.c: guard config parser from value=NULL merge-recursive.c: guard config parser from value=NULL http.c: guard config parser from value=NULL help.c: guard config parser from value=NULL git.c: guard config parser from value=NULL diff.c: guard config parser from value=NULL convert.c: guard config parser from value=NULL connect.c: guard config parser from value=NULL builtin-tag.c: guard config parser from value=NULL builtin-show-branch.c: guard config parser from value=NULL builtin-reflog.c: guard config parser from value=NULL builtin-log.c: guard config parser from value=NULL builtin-config.c: guard config parser from value=NULL builtin-commit.c: guard config parser from value=NULL builtin-branch.c: guard config parser from value=NULL ...
2008-02-11Document that the default of branch.autosetupmerge is trueJohannes Schindelin
In 34a3e69 (git-branch: default to --track) the default was changed to true, to help new git users. But yours truly forgot to update the documentation. This fixes it. Noticed by Kalle Olavi Niemitalo. Signed-off-by: Johannes Schindelin <> Signed-off-by: Junio C Hamano <>
2008-02-10Introduce the config variable pack.packSizeLimitJohannes Schindelin
"git pack-objects" has the option --max-pack-size to limit the file size of the packs to a certain amount of bytes. On platforms where the pack file size is limited by filesystem constraints, it is easy to forget this option, and this option does not exist for "git gc" to begin with. So introduce a config variable to set the default maximum, but make this overrideable by the command line. Suggested by Tor Arvid Lund. Signed-off-by: Johannes Schindelin <> Signed-off-by: Junio C Hamano <>
2008-02-06safecrlf: Add mechanism to warn about irreversible crlf conversionsSteffen Prohaska
CRLF conversion bears a slight chance of corrupting data. autocrlf=true 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. This patch adds a mechanism that can either warn the user about an irreversible conversion or can even refuse to convert. The mechanism is controlled by the variable core.safecrlf, with the following values: - false: disable safecrlf mechanism - warn: warn about irreversible conversions - true: refuse irreversible conversions The default is to warn. Users are only affected by this default if core.autocrlf is set. But the current default of git is to leave core.autocrlf unset, so users will not see warnings unless they deliberately chose to activate the autocrlf mechanism. The safecrlf mechanism's details depend on the git command. The general principles when safecrlf is active (not false) are: - we warn/error out if files in the work tree can modified in an irreversible way without giving the user a chance to backup the original file. - for read-only operations that do not modify files in the work tree we do not not print annoying warnings. There are exceptions. Even though... - "git add" itself does not touch the files in the work tree, the next checkout would, so the safety triggers; - "git apply" to update a text file with a patch does touch the files in the work tree, but the operation is about text files and CRLF conversion is about fixing the line ending inconsistencies, so the safety does not trigger; - "git diff" itself does not touch the files in the work tree, it is often run to inspect the changes you intend to next "git add". To catch potential problems early, safety triggers. The concept of a safety check was originally proposed in a similar way by Linus Torvalds. Thanks to Dimitry Potapov for insisting on getting the naked LF/autocrlf=true case right. Signed-off-by: Steffen Prohaska <>
2008-02-05core.whitespace: cr-at-eolJunio C Hamano
This new error mode allows a line to have a carriage return at the end of the line when checking and fixing trailing whitespace errors. Some people like to keep CRLF line ending recorded in the repository, and still want to take advantage of the automated trailing whitespace stripping. We still show ^M in the diff output piped to "less" to remind them that they do have the CR at the end, but these carriage return characters at the end are no longer flagged as errors. Signed-off-by: Junio C Hamano <>
2008-01-29instaweb: use 'browser.<tool>.path' config option if it's set.Christian Couder
Signed-off-by: Christian Couder <> Acked-by: Eric Wong <> Signed-off-by: Junio C Hamano <>
2008-01-29Documentation: config: add "browser.<tool>.path".Christian Couder
Signed-off-by: Christian Couder <> Signed-off-by: Junio C Hamano <>
2008-01-15Fix git-rerere documentationJunio C Hamano
rerere.enabled is _not_ on by default. The command is enabled if rr-cache exists even when rerere.enabled is missing, and enabled or disabled by explicitly setting the rerere.enabled variable.
2008-01-12Document some default values in config.txtMichele Ballabio
This documents the default values of, gc.autopacklimit fetch.unpacklimit, receive.unpacklimit and transfer.unpacklimit. Signed-off-by: Michele Ballabio <> Signed-off-by: Junio C Hamano <>
2008-01-08Documentation: config: add 'help.*' and 'instaweb.*' variables.Christian Couder
Signed-off-by: Christian Couder <> Signed-off-by: Junio C Hamano <>
2008-01-07Document the color.interactive semanticsJeff King
There are two possible confusions with the color.interactive description: 1. the short name "interactive" implies that it covers all interactive commands; let's explicitly make it so, even though there are no other interactive commands which currently use it 2. Not all parts of "git add --interactive" are controlled by color.interactive (specifically, the diffs require tweaking color.diff). So let's clarify that it applies only to displays and prompts. Signed-off-by: Jeff King <> Signed-off-by: Junio C Hamano <>
2008-01-07Documentation: rename gitlink macro to linkgitDan McGee
Between AsciiDoc 8.2.2 and 8.2.3, the following change was made to the stock Asciidoc configuration: @@ -149,7 +153,10 @@ # Inline macros. # Backslash prefix required for escape processing. # (?s) re flag for line spanning. -(?su)[\\]?(?P<name>\w(\w|-)*?):(?P<target>\S*?)(\[(?P<attrlist>.*?)\])= + +# Explicit so they can be nested. +(?su)[\\]?(?P<name>(http|https|ftp|file|mailto|callto|image|link)):(?P<target>\S*?)(\[(?P<attrlist>.*?)\])= + # Anchor: [[[id]]]. Bibliographic anchor. (?su)[\\]?\[\[\[(?P<attrlist>[\w][\w-]*?)\]\]\]=anchor3 # Anchor: [[id,xreflabel]] This default regex now matches explicit values, and unfortunately in this case gitlink was being matched by just 'link', causing the wrong inline macro template to be applied. By renaming the macro, we can avoid being matched by the wrong regex. Signed-off-by: Dan McGee <> Signed-off-by: Junio C Hamano <>
2007-12-31Merge branch 'maint' of git:// C Hamano
* 'maint' of git:// Documentation/user-manual.txt: fix typo Documentation: fix remote.<name>.skipDefaultUpdate description
2007-12-31Documentation: fix remote.<name>.skipDefaultUpdate descriptionJ. Bruce Fields
Fix the subcommand name. Signed-off-by: J. Bruce Fields <>
2007-12-18Fix some documentation typos.Ralf Wildenhues
Signed-off-by: Ralf Wildenhues <> Signed-off-by: Junio C Hamano <>
2007-12-18Document diff.external and mergetool.<tool>.pathJohannes Schindelin
There was no documentation for the config variables diff.external and mergetool.<tool>.path. Noticed by Sebastian Schuberth. Signed-off-by: Johannes Schindelin <> Signed-off-by: Junio C Hamano <>
2007-12-16whitespace: fix config.txt description of indent-with-non-tabJ. Bruce Fields
Fix garbled description. Signed-off-by: J. Bruce Fields <> Signed-off-by: Junio C Hamano <>
2007-12-09Merge branch 'jc/spht'Junio C Hamano
* jc/spht: Use gitattributes to define per-path whitespace rule core.whitespace: documentation updates. builtin-apply: teach whitespace_rules builtin-apply: rename "whitespace" variables and fix styles core.whitespace: add test for diff whitespace error highlighting git-diff: complain about >=8 consecutive spaces in initial indent War on whitespace: first, a bit of retreat. Conflicts: cache.h config.c diff.c
2007-12-08add status.relativePaths config variableJeff King
The output of git-status was recently changed to output relative paths. Setting this variable to false restores the old behavior for any old-timers that prefer it. Signed-off-by: Jeff King <> Signed-off-by: Junio C Hamano <>
2007-12-06Color support for "git-add -i"Junio C Hamano
This is mostly lifted from earlier series by Dan Zwell, but updated to use "git config --get-color" and "git config --get-colorbool" to make it simpler and more consistent with commands written in C. A new configuration color.interactive variable is like color.diff and color.status, and controls if "git-add -i" uses color. A set of configuration variables, color.interactive.<slot>, are used to define what color is used for the prompt, header, and help text. For perl scripts, provides $repo->get_color() method, which takes the slot name and the default color, and returns the terminal escape sequence to color the output text. $repo->get_colorbool() method can be used to check if color is set to be used for a given operation. Signed-off-by: Junio C Hamano <>
2007-12-06Documentation: color.* = true means "auto"Junio C Hamano
We forgot to document the earlier sanity-fix. Signed-off-by: Junio C Hamano <>
2007-12-04Documentation: rerere is enabled by default these days.Junio C Hamano
Signed-off-by: Junio C Hamano <>
2007-12-04Add remote.<name>.proxySam Vilain
As well as allowing a default http.proxy option, allow it to be set per-remote. Signed-off-by: Sam Vilain <> Signed-off-by: Junio C Hamano <>
2007-12-04Allow HTTP proxy to be overridden in configSam Vilain
The http_proxy / HTTPS_PROXY variables used by curl to control proxying may not be suitable for git. Allow the user to override them in the configuration file. Signed-off-by: Junio C Hamano <>
2007-11-29Teach 'git pull' about --rebaseJohannes Schindelin
When calling 'git pull' with the '--rebase' option, it performs a fetch + rebase instead of a fetch + merge. This behavior is more desirable than fetch + pull when a topic branch is ready to be submitted and needs to be update. fetch + rebase might also be considered a better workflow with shared repositories in any case, or for contributors to a centrally managed repository, such as WINE's. As a convenience, you can set the default behavior for a branch by defining the config variable branch.<name>.rebase, which is interpreted as a bool. This setting can be overridden on the command line by --rebase and --no-rebase. Signed-off-by: Johannes Schindelin <> Signed-off-by: Junio C Hamano <>
2007-11-25core.whitespace: documentation updates.Junio C Hamano
This adds description of core.whitespace to the manual page of git-config, and updates the stale description of whitespace handling in the manual page of git-apply. Also demote "strip" to a synonym status for "fix" as the value of --whitespace option given to git-apply. Signed-off-by: Junio C Hamano <>
2007-11-21Merge branch 'maint'Junio C Hamano
* maint: send-email: add transfer encoding header with content-type Doc fix for git-reflog: mention @{...} syntax, and <ref> in synopsys. config: clarify compression defaults config: correct core.loosecompression documentation
2007-11-20config: clarify compression defaultsBrian Downing
* Clarify that core.compression provides a system-wide default to other compression parameters. * Explain that the default for pack.compression, -1, is "a default compromise between speed and compression (currently equivalent to level 6)" according to zlib.h. Signed-off-by: Brian Downing <> Acked-by: Nicolas Pitre <> Signed-off-by: Junio C Hamano <>
2007-11-20config: correct core.loosecompression documentationBrian Downing
* core.loosecompression stated that the default was "0 (best speed)", when in fact 0 is "no compression", and the default is Z_BEST_SPEED, which is 1. Signed-off-by: Brian Downing <> Acked-by: Nicolas Pitre <> Signed-off-by: Junio C Hamano <>
2007-11-14Merge branch 'bg/format-patch-N'Junio C Hamano
* bg/format-patch-N: Rearrange git-format-patch synopsis to improve clarity. format-patch: Test --[no-]numbered and format.numbered format-patch: Add configuration and off switch for --numbered
2007-11-08Merge branch 'jc/clean-config'Junio C Hamano
* jc/clean-config: clean: require -f to do damage by default
2007-11-04clean: require -f to do damage by defaultJunio C Hamano
This makes the clean.requireForce configuration default to true. Too many people are burned by typing "git clean" by mistake when they meant to say "make clean". Signed-off-by: Junio C Hamano <>
2007-11-04format-patch: Add configuration and off switch for --numberedBrian Gernhardt
format.numbered is a tri-state variable. Boolean values enable or disable numbering by default and "auto" enables number when outputting more than one patch. --no-numbered (short: -N) will disable numbering. Signed-off-by: Brian Gernhardt <> Signed-off-by: Junio C Hamano <>
2007-11-02make the pack index version configurableNicolas Pitre
It is a good idea to use pack index version 2 all the time since it has proper protection against propagation of certain pack corruptions when repacking which is not possible with index version 1, as demonstrated in test t5302. Hence this config option. The default is still pack index version 1. Signed-off-by: Nicolas Pitre <> Signed-off-by: Junio C Hamano <>
2007-10-16Merge branch 'master' into db/fetch-packShawn O. Pearce
There's a number of tricky conflicts between master and this topic right now due to the rewrite of builtin-push. Junio must have handled these via rerere; I'd rather not deal with them again so I'm pre-merging master into the topic. Besides this topic somehow started to depend on the strbuf series that was in next, but is now in master. It no longer compiles on its own without the strbuf API. * master: (184 commits) Whip post maintenance series into shape. Minor usage update in setgitperms.perl manual: use 'URL' instead of 'url'. manual: add some markup. manual: Fix example finding commits referencing given content. Fix wording in push definition. Fix some typos, punctuation, missing words, minor markup. manual: Fix or remove em dashes. Add a --dry-run option to git-push. Add a --dry-run option to git-send-pack. Fix in-place editing functions in convert.c instaweb: support for Ruby's WEBrick server instaweb: allow for use of auto-generated scripts Add 'git-p4 commit' as an alias for 'git-p4 submit' hg-to-git speedup through selectable repack intervals git-svn: respect Subversion's [auth] section configuration values gtksourceview2 support for gitview fix contrib/hooks/post-receive-email hooks.recipients error message Support cvs via git-shell rebase -i: use diff plumbing instead of porcelain ... Conflicts: Makefile builtin-push.c rsh.c
2007-10-16Fix some typos, punctuation, missing words, minor markup.Ralf Wildenhues
Signed-off-by: Lars Hjemli <> Signed-off-by: Shawn O. Pearce <>
2007-10-03Merge branch 'lh/merge'Junio C Hamano
* lh/merge: git-merge: add --ff and --no-ff options git-merge: add support for --commit and --no-squash git-merge: add support for branch.<name>.mergeoptions git-merge: refactor option parsing git-merge: fix faulty SQUASH_MSG Add test-script for git-merge porcelain
2007-10-03Merge branch 'jc/autogc'Junio C Hamano
* jc/autogc: git-gc --auto: run "repack -A -d -l" as necessary. git-gc --auto: restructure the way "repack" command line is built. git-gc --auto: protect ourselves from accumulated cruft git-gc --auto: add documentation. git-gc --auto: move threshold check to need_to_gc() function. repack -A -d: use --keep-unreachable when repacking pack-objects --keep-unreachable Export matches_pack_name() and fix its return value Invoke "git gc --auto" from commit, merge, am and rebase. Implement git gc --auto