git-commit-vandalism/Documentation
Christian Couder 435ec090ec config: add core.untrackedCache
When we know that mtime on directory as given by the environment
is usable for the purpose of untracked cache, we may want the
untracked cache to be always used without any mtime test or
kernel name check being performed.

Also when we know that mtime is not usable for the purpose of
untracked cache, for example because the repo is shared over a
network file system, we may want the untracked-cache to be
automatically removed from the index.

Allow the user to express such preference by setting the
'core.untrackedCache' configuration variable, which can take
'keep', 'false', or 'true' and default to 'keep'.

When read_index_from() is called, it now adds or removes the
untracked cache in the index to respect the value of this
variable. So it does nothing if the value is `keep` or if the
variable is unset; it adds the untracked cache if the value is
`true`; and it removes the cache if the value is `false`.

`git update-index --[no-|force-]untracked-cache` still adds the
untracked cache to, or removes it, from the index, but this
shows a warning if it goes against the value of
core.untrackedCache, because the next time the index is read
the untracked cache will be added or removed if the
configuration is set to do so.

Also `--untracked-cache` used to check that the underlying
operating system and file system change `st_mtime` field of a
directory if files are added or deleted in that directory. But
because those tests take a long time, `--untracked-cache` no
longer performs them. Instead, there is now
`--test-untracked-cache` to perform the tests. This change
makes `--untracked-cache` the same as `--force-untracked-cache`.

This last change is backward incompatible and should be
mentioned in the release notes.

Helped-by: Duy Nguyen <pclouds@gmail.com>
Helped-by: Torsten Bögershausen <tboegi@web.de>
Helped-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>

read-cache: Duy'sfixup

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-01-27 12:30:00 -08:00
..
howto command-list.txt: add the common groups block 2015-05-21 13:03:37 -07:00
RelNotes Git 2.7-rc1 2015-12-15 09:47:11 -08:00
technical Merge branch 'rs/daemon-plug-child-leak' into maint 2015-11-05 12:18:17 -08:00
.gitattributes
.gitignore
asciidoc.conf
blame-options.txt Documentation/blame-options: don't list date formats 2015-09-03 15:34:39 -07:00
build-docdep.perl
cat-texi.perl
cmd-list.perl command-list: prepare machinery for upcoming "common groups" section 2015-05-21 13:03:37 -07:00
CodingGuidelines Merge branch 'jg/cguide-we-cannot-count' into maint 2015-04-21 12:12:19 -07:00
config.txt config: add core.untrackedCache 2016-01-27 12:30:00 -08:00
date-formats.txt
diff-config.txt
diff-format.txt
diff-generate-patch.txt doc: fix misrendering due to `single quote' 2015-05-12 22:13:39 -07:00
diff-options.txt Documentation/diff: give --word-diff-regex=. example 2015-11-24 18:38:46 -05:00
docbook-xsl.css
docbook.xsl
everyday.txto
fetch-options.txt
fix-texi.perl
fmt-merge-msg-config.txt Documentation: include 'merge.branchdesc' for merge and config as well 2015-05-28 12:38:46 -07:00
git-add.txt Merge branch 'jk/asciidoc-markup-fix' into maint 2015-06-05 12:00:19 -07:00
git-am.txt Merge branch 'mm/keyid-docs' into maint 2015-10-16 14:32:33 -07:00
git-annotate.txt
git-apply.txt
git-archimport.txt
git-archive.txt
git-bisect-lk2009.txt Merge branch 'jk/asciidoctor-section-heading-markup-fix' into maint 2015-10-16 14:32:53 -07:00
git-bisect.txt Merge branch 'xf/user-manual-markup' into maint 2015-11-04 14:20:47 -08:00
git-blame.txt blame: add blame.showEmail configuration 2015-06-01 15:50:43 -07:00
git-branch.txt Merge branch 'kn/for-each-branch' 2015-10-15 15:43:38 -07:00
git-bundle.txt
git-cat-file.txt usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
git-check-attr.txt usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
git-check-ignore.txt check-ignore: correct documentation about output 2015-11-24 17:13:36 -05:00
git-check-mailmap.txt
git-check-ref-format.txt Merge branch 'nd/doc-check-ref-format-typo' into maint 2015-12-11 11:14:15 -08:00
git-checkout-index.txt
git-checkout.txt checkout: add --progress option 2015-11-01 14:08:17 -08:00
git-cherry-pick.txt Documentation: explain optional arguments better 2015-09-21 10:48:23 -07:00
git-cherry.txt
git-citool.txt
git-clean.txt
git-clone.txt clone: allow "--dissociate" without reference 2015-10-22 12:13:29 -07:00
git-column.txt
git-commit-tree.txt usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
git-commit.txt Documentation: explain optional arguments better 2015-09-21 10:48:23 -07:00
git-config.txt config: add '--name-only' option to list only variable names 2015-08-10 10:33:58 -07:00
git-count-objects.txt
git-credential-cache--daemon.txt
git-credential-cache.txt
git-credential-store.txt git-credential-store: support XDG_CONFIG_HOME 2015-03-24 08:08:02 -07:00
git-credential.txt
git-cvsexportcommit.txt
git-cvsimport.txt
git-cvsserver.txt
git-daemon.txt
git-describe.txt Merge branch 'sg/describe-contains' 2015-08-31 15:39:10 -07:00
git-diff-files.txt
git-diff-index.txt
git-diff-tree.txt
git-diff.txt
git-difftool.txt
git-fast-export.txt doc: convert \--option to --option 2015-05-12 22:14:46 -07:00
git-fast-import.txt Merge branch 'mh/fast-import-get-mark' 2015-08-03 11:01:23 -07:00
git-fetch-pack.txt doc: convert \--option to --option 2015-05-12 22:14:46 -07:00
git-fetch.txt Merge branch 'jc/em-dash-in-doc' into maint 2015-11-04 14:20:45 -08:00
git-filter-branch.txt
git-fmt-merge-msg.txt usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
git-for-each-ref.txt Merge branch 'kn/for-each-tag' 2015-10-05 12:30:18 -07:00
git-format-patch.txt Merge branch 'po/doc-branch-desc' 2015-09-17 12:29:03 -07:00
git-fsck-objects.txt
git-fsck.txt fsck: introduce git fsck --connectivity-only 2015-06-23 14:27:37 -07:00
git-gc.txt Merge branch 'jc/doc-gc-prune-now' into maint 2015-10-20 15:22:40 -07:00
git-get-tar-commit-id.txt usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
git-grep.txt Documentation: explain optional arguments better 2015-09-21 10:48:23 -07:00
git-gui.txt
git-hash-object.txt usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
git-help.txt
git-http-backend.txt Merge branch 'jk/http-backend-deadlock' into maint 2015-06-16 14:33:45 -07:00
git-http-fetch.txt Documentation: the name of the system is 'Git', not 'git' 2013-02-01 13:53:33 -08:00
git-http-push.txt
git-imap-send.txt
git-index-pack.txt
git-init-db.txt
git-init.txt
git-instaweb.txt
git-interpret-trailers.txt Merge branch 'tk/doc-interpret-trailers-grammo' into maint 2015-10-16 14:32:56 -07:00
git-log.txt log: Update log.follow doc and add to config.txt 2015-10-07 10:37:48 -07:00
git-ls-files.txt
git-ls-remote.txt ls-remote.txt: delete unsupported option 2015-09-28 11:07:04 -07:00
git-ls-tree.txt
git-mailinfo.txt
git-mailsplit.txt
git-merge-base.txt
git-merge-file.txt merge-file: clamp exit code to maximum 127 2015-10-29 12:10:23 -07:00
git-merge-index.txt
git-merge-one-file.txt
git-merge-tree.txt
git-merge.txt Merge branch 'mm/keyid-docs' into maint 2015-10-16 14:32:33 -07:00
git-mergetool--lib.txt
git-mergetool.txt
git-mktag.txt usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
git-mktree.txt
git-mv.txt
git-name-rev.txt
git-notes.txt Merge branch 'jk/notes-dwim-doc' into maint 2015-10-16 14:32:40 -07:00
git-p4.txt Merge branch 'ls/p4-keep-empty-commits' 2015-12-15 08:02:19 -08:00
git-pack-objects.txt doc: convert \--option to --option 2015-05-12 22:14:46 -07:00
git-pack-redundant.txt
git-pack-refs.txt
git-parse-remote.txt
git-patch-id.txt usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
git-prune-packed.txt
git-prune.txt worktree: new place for "git prune --worktrees" 2015-06-29 08:48:44 -07:00
git-pull.txt pull: handle git-fetch's options as well 2015-06-02 13:36:22 -07:00
git-push.txt Merge branch 'jc/em-dash-in-doc' into maint 2015-11-04 14:20:45 -08:00
git-quiltimport.txt git-quiltimport: add commandline option --series <file> 2015-09-01 11:10:07 -07:00
git-read-tree.txt
git-rebase.txt Merge branch 'jk/rebase-no-autostash' into maint 2015-12-08 14:05:01 -08:00
git-receive-pack.txt
git-reflog.txt git-reflog: add exists command 2015-07-21 14:08:14 -07:00
git-relink.txt
git-remote-ext.txt
git-remote-fd.txt
git-remote-helpers.txto
git-remote-testgit.txt
git-remote.txt Merge branch 'xf/user-manual-markup' into maint 2015-11-04 14:20:47 -08:00
git-repack.txt
git-replace.txt
git-request-pull.txt doc: show usage of branch description 2015-09-14 12:50:33 -07:00
git-rerere.txt
git-reset.txt
git-rev-list.txt Merge branch 'jk/date-local' 2015-10-05 12:30:13 -07:00
git-rev-parse.txt rev-parse --parseopt: allow [*=?!] in argument hints 2015-07-15 10:30:54 -07:00
git-revert.txt Documentation: explain optional arguments better 2015-09-21 10:48:23 -07:00
git-rm.txt
git-send-email.txt sendemail: teach git-send-email to dump alias names 2015-11-20 08:02:06 -05:00
git-send-pack.txt push: support signing pushes iff the server supports it 2015-08-19 12:58:45 -07:00
git-sh-i18n--envsubst.txt
git-sh-i18n.txt
git-sh-setup.txt
git-shell.txt
git-shortlog.txt
git-show-branch.txt
git-show-index.txt usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
git-show-ref.txt usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
git-show.txt doc: convert \--option to --option 2015-05-12 22:14:46 -07:00
git-stage.txt
git-stash.txt stash: allow "stash show" diff output configurable 2015-08-31 11:29:04 -07:00
git-status.txt Documentation: explain optional arguments better 2015-09-21 10:48:23 -07:00
git-stripspace.txt usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
git-submodule.txt document submodule sync --recursive 2015-12-04 13:08:05 -08:00
git-svn.txt Merge branch 'br/svn-doc-include-paths-config' into maint 2015-09-17 12:11:46 -07:00
git-symbolic-ref.txt
git-tag.txt Merge branch 'mm/keyid-docs' into maint 2015-10-16 14:32:33 -07:00
git-tools.txt Documentation/git-tools: retire manually-maintained list 2015-07-28 13:21:59 -07:00
git-unpack-file.txt
git-unpack-objects.txt usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
git-update-index.txt config: add core.untrackedCache 2016-01-27 12:30:00 -08:00
git-update-ref.txt update-ref and tag: add --create-reflog arg 2015-07-21 14:08:35 -07:00
git-update-server-info.txt
git-upload-archive.txt Documentation: match underline with the text 2015-10-22 10:16:12 -07:00
git-upload-pack.txt
git-var.txt
git-verify-commit.txt verify-commit: add option to print raw gpg status information 2015-06-22 14:20:47 -07:00
git-verify-pack.txt git-verify-pack.txt: fix inconsistent spelling of "packfile" 2015-05-17 11:24:57 -07:00
git-verify-tag.txt verify-tag: add option to print raw gpg status information 2015-06-22 14:20:47 -07:00
git-web--browse.txt
git-whatchanged.txt
git-worktree.txt worktree: add 'list' command 2015-10-08 11:57:14 -07:00
git-write-tree.txt
git.txt Git 2.6.4 2015-12-08 14:12:45 -08:00
gitattributes.txt userdiff: add support for Fountain documents 2015-07-23 14:44:51 -07:00
gitcli.txt
gitcore-tutorial.txt Merge branch 'ja/tutorial-asciidoctor-fix' into maint 2015-06-05 12:00:22 -07:00
gitcredentials.txt
gitcvs-migration.txt
gitdiffcore.txt doc: convert \--option to --option 2015-05-12 22:14:46 -07:00
giteveryday.txt Documentation/everyday: match undefline with the text 2015-10-22 10:14:44 -07:00
gitglossary.txt
githooks.txt
gitignore.txt Merge branch 'nd/ignore-then-not-ignore' 2015-10-07 13:38:17 -07:00
gitk.txt Documentation: change -L:<regex> to -L:<funcname> 2015-04-20 11:05:50 -07:00
gitmodules.txt
gitnamespaces.txt
gitremote-helpers.txt gitremote-helpers.txt: document pushcert option 2015-08-19 12:41:38 -07:00
gitrepository-layout.txt Documentation/git-worktree: wordsmith worktree-related manpages 2015-07-20 11:07:18 -07:00
gitrevisions.txt Documentation: match underline with the text 2015-10-22 10:16:12 -07:00
gittutorial-2.txt
gittutorial.txt
gitweb.conf.txt Merge branch 'tf/gitweb-typofix' 2015-07-21 12:45:27 -07:00
gitweb.txt
gitworkflows.txt
glossary-content.txt refs: make refs/bisect/* per-worktree 2015-09-01 10:37:39 -07:00
howto-index.sh
i18n.txt Documentation/i18n.txt: clarify character encoding support 2015-07-01 14:55:53 -07:00
install-doc-quick.sh
install-webdoc.sh
line-range-format.txt Documentation: change -L:<regex> to -L:<funcname> 2015-04-20 11:05:50 -07:00
mailmap.txt
Makefile
manpage-1.72.xsl
manpage-base-url.xsl.in
manpage-base.xsl
manpage-bold-literal.xsl
manpage-normal.xsl
manpage-quote-apos.xsl
manpage-suppress-sp.xsl
merge-config.txt Merge branch 'sg/merge-summary-config' into maint 2015-06-25 11:02:17 -07:00
merge-options.txt
merge-strategies.txt
pretty-formats.txt rev-list: make it obvious that we do not support notes 2015-08-24 10:33:15 -07:00
pretty-options.txt notes: correct documentation of DWIMery for notes references 2015-09-22 15:24:01 -07:00
pull-fetch-param.txt
rev-list-options.txt Merge branch 'jk/date-local' 2015-10-05 12:30:13 -07:00
revisions.txt sha1_name: implement @{push} shorthand 2015-05-22 09:33:08 -07:00
sequencer.txt
SubmittingPatches Merge branch 'jc/submitting-patches-mention-send-email' into maint 2015-03-28 09:33:10 -07:00
urls-remotes.txt Documentation: match underline with the text 2015-10-22 10:16:12 -07:00
urls.txt
user-manual.conf
user-manual.txt Merge branch 'xf/user-manual-ff' into maint 2015-11-04 14:20:49 -08:00