Subject: [PATCH 4/5] worktree: make core.sparseCheckout and core.ignoreStat per-worktree

From: Nguyễn Thái Ngọc Duy <[email-masked]>
Date: Wed, 2 Dec 2015 20:13:45 +0100

The first one must be per-worktree because info/sparse-checkout
already is. The second one shares the same nature and should also be
per-worktree.

Note, because info/config.worktree uses .gitignore syntax, you can
negate a default pattern and revert it back to per-repo..

Signed-off-by: Nguyễn Thái Ngọc Duy <[email-masked]>
---
 Documentation/config.txt | 5 ++++-
 config.c                 | 2 ++
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/Documentation/config.txt b/Documentation/config.txt
index 09a8b57..aff1431 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -435,7 +435,8 @@ 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.
+False by default. This variable is per-worktree in multiple working
+tree setup.
 
 core.preferSymlinkRefs::
 	Instead of the default "symref" format for HEAD
@@ -736,6 +737,8 @@ the 'GIT_NOTES_REF' environment variable.  See linkgit:git-notes[1].
 core.sparseCheckout::
 	Enable "sparse checkout" feature. See section "Sparse checkout" in
 	linkgit:git-read-tree[1] for more information.
++
+This variable is per-worktree in multiple working tree setup.
 
 core.abbrev::
 	Set the length object names are abbreviated to.  If unspecified,
diff --git a/config.c b/config.c
index 54a6219..fdf38da 100644
--- a/config.c
+++ b/config.c
@@ -93,6 +93,8 @@ static long config_buf_ftell(struct config_source *conf)
 
 static const char* default_config_worktree[] = {
 	"core/bare",
+	"core/ignorestat",
+	"core/sparsecheckout",
 	"core/worktree"
 };
 
-- 
2.2.0.513.g477eb31