On 12/01/2015 09:31 PM, Christian Couder wrote:
When we know that mtime is fully supported by the environment, we
might want the untracked cache to be always used by default without
any mtime test or kernel version check being performed.
I'm not sure if ever "we know" ?
How can we know without testing ?
I personaly can not say "I know" in all the different system I am using,
so I always want to test and verify that the untracked cache is working,
before I rely on it.
Also when we know that mtime is not supported by the environment,
for example because the repo is shared over a network file system,
then we might want 'git update-index --untracked-cache' to fail
immediately instead of it testing if it works (because it might
work on some systems using the repo over the network file system
but not others).
Same here.
Signed-off-by: Christian Couder <chriscool@xxxxxxxxxxxxx>
---
Documentation/config.txt | 10 ++++++++++
Documentation/git-update-index.txt | 11 +++++++++--
builtin/update-index.c | 28 ++++++++++++++++++----------
cache.h | 1 +
config.c | 10 ++++++++++
contrib/completion/git-completion.bash | 1 +
dir.c | 2 +-
environment.c | 1 +
wt-status.c | 9 +++++++++
9 files changed, 60 insertions(+), 13 deletions(-)
diff --git a/Documentation/config.txt b/Documentation/config.txt
index b4b0194..bf176ff 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -308,6 +308,16 @@ core.trustctime::
crawlers and some backup systems).
See linkgit:git-update-index[1]. True by default.
+core.untrackedCache::
+ If unset or set to 'default' or 'check', untracked cache will
+ not be enabled by default and when
+ 'update-index --untracked-cache' is called, Git will test if
+ mtime is working properly before enabling it. If set to false,
+ Git will refuse to enable untracked cache even if
+ '--force-untracked-cache' is used. If set to true, Git will
+ blindly enabled untracked cache by default without testing if
+ it works. See linkgit:git-update-index[1].
+
Please no.
The command line option should always be able to overwrite any settings
from a config file.
Sorry, I may missing the big picture here.
What exactly should be achieved ?
A config variable that should ask Git to always try to use the untracked
cache ?
Or a config variable that tells Git to never use the untracked cache ?
Or a combination ?
core.untrackedCache::
false: Never use the untracked cache ?
true: Always try to use the untracked cache ?
Try means: probe, and if the probing fails, record that if fails in the index,
for this hostname/os/kernel/path (Don't remember all the details)
unset: As today,
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html