Here is a new version of a patch series to improve the untracked cache feature. This v7 implements core.untrackedCache as a tristate config variable. When it's `true`, Git commands, especially `git status`, should always add the untracked cache and use it, and when `false`, Git commands should remove it. The default is `keep` in which case the untracked cache is neither removed nor added, and used if it is there. This v7 is mostly identical to the previous v6. One of the few changes is that in commit messages now the "Helped-by: ..." are before the "Signed-off-by: ..." trailers as suggested by Duy. Patches that have other changes have these other changes described a bit below, otherwise only the patch itself is briefly described. Patch 1/11 is a small bugfix. Patch 2/11 to 4/11 add some small features that are missing. Patchs 5/11 to 7/11 are some refactoring to prepare for the following patchs. Patch 8/11 deals with the "ident" field in "struct untracked_cache". Patch 9/11 adds core.untrackedCache. The commit message has been improved thanks to Stefan. And as Duy suggested, the check to see if we should add or remove the untracked cache is made inside post_read_index_from() instead of read_index_from(), and post_read_index_from() comes from the renaming of check_ce_order(). Patch 10/11 is a hack that is needed to have test-dump-untracked-cache work like it used to. Patch 11/11 contains tests. So the changes compared to v6 are mostly small updates. The patch series is also available there: https://github.com/chriscool/git/tree/uc-notifs70 Thanks to the reviewers and helpers. Christian Couder (11): dir: free untracked cache when removing it update-index: use enum for untracked cache options update-index: add --test-untracked-cache update-index: add untracked cache notifications update-index: move 'uc' var declaration dir: add {new,add}_untracked_cache() dir: add remove_untracked_cache() dir: simplify untracked cache "ident" field config: add core.untrackedCache test-dump-untracked-cache: don't modify the untracked cache t7063: add tests for core.untrackedCache Documentation/config.txt | 9 ++++ Documentation/git-update-index.txt | 67 +++++++++++++++++++++---- builtin/update-index.c | 62 ++++++++++++++--------- cache.h | 8 +++ config.c | 24 +++++++++ contrib/completion/git-completion.bash | 1 + dir.c | 62 ++++++++++++++++++----- dir.h | 3 +- environment.c | 7 +++ read-cache.c | 20 ++++++-- t/t7063-status-untracked-cache.sh | 89 +++++++++++++++++++++++++++++++--- test-dump-untracked-cache.c | 4 ++ 12 files changed, 299 insertions(+), 57 deletions(-) -- 2.7.0.181.gd7ef666.dirty -- 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