[PATCH v6 19/19] untracked-cache: config option
- From
David Turner <dturner@twopensource.com>
- Date
- Apr 27, 2016, 20:04 UTC
- Message-ID
- <1461787481-877-20-git-send-email-dturner@twopensource.com>
- In-Reply-To
- <1461787481-877-1-git-send-email-dturner@twopensource.com>
Add a config option to populate the untracked cache.
For installations that have centrally-managed configuration, it's easier to set a config once than to run update-index on every repository.
Signed-off-by: David Turner <dturner@twopensource.com> --- Documentation/config.txt | 4 ++++ read-cache.c | 7 ++++++- 2 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/Documentation/config.txt b/Documentation/config.txt index 385ea66..c7b76ef 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -1848,6 +1848,10 @@ imap:: The configuration variables in the 'imap' section are described in linkgit:git-imap-send[1]. +index.adduntrackedcache:: + Automatically populate the untracked cache whenever the index + is written. + index.addwatchmanextension:: Automatically add the watchman extension to the index whenever it is written. diff --git a/read-cache.c b/read-cache.c index e56a644..40869fe 100644 --- a/read-cache.c +++ b/read-cache.c @@ -2469,7 +2469,7 @@ static int do_write_index(struct index_state *istate, int newfd, int entries = istate->cache_nr; struct stat st; struct strbuf previous_name_buf = STRBUF_INIT, *previous_name; - int watchman = 0; + int watchman = 0, untracked = 0; uint64_t start = getnanotime(); for (i = removed = extended = 0; i < entries; i++) { @@ -2499,6 +2499,11 @@ static int do_write_index(struct index_state *istate, int newfd, !the_index.last_update) the_index.last_update = xstrdup(""); + if (!git_config_get_bool("index.adduntrackedcache", &untracked) && + untracked && + !istate->untracked) + add_untracked_cache(&the_index); + hdr_version = istate->version; hdr.hdr_signature = htonl(CACHE_SIGNATURE);
-- 2.4.2.767.g62658d5-twtrsrc