git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Christian Couder <christian.couder@gmail.com>
To: git@vger.kernel.org
Cc: "Junio C Hamano" <gitster@pobox.com>, "Jeff King" <peff@peff.net>,
	"Ævar Arnfjörð Bjarmason" <avarab@gmail.com>,
	"Nguyen Thai Ngoc Duy" <pclouds@gmail.com>,
	"David Turner" <dturner@twopensource.com>,
	"Eric Sunshine" <sunshine@sunshineco.com>,
	"Torsten Bögershausen" <tboegi@web.de>,
	"Christian Couder" <chriscool@tuxfamily.org>
Subject: [PATCH v3 04/11] update-index: add untracked cache notifications
Date: Wed, 23 Dec 2015 22:03:52 +0100	[thread overview]
Message-ID: <1450904639-25592-5-git-send-email-chriscool@tuxfamily.org> (raw)
In-Reply-To: <1450904639-25592-1-git-send-email-chriscool@tuxfamily.org>

Attempting to flip the untracked-cache feature on for a random index
file with

    cd /random/unrelated/place
    git --git-dir=/somewhere/else/.git update-index --untracked-cache

would not work as you might expect. Because flipping the feature on
in the index also records the location of the corresponding working
tree (/random/unrelated/place in the above example), when the index
is subsequently used to keep track of files in the working tree in
/somewhere/else, the feature is disabled.

With this patch "git update-index --[test-]untracked-cache" tells the
user in which directory tests are performed. This makes it easy to
spot any problem.

Also in verbose mode, let's tell the user when the cache is enabled
or disabled.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
---
 builtin/update-index.c | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/builtin/update-index.c b/builtin/update-index.c
index 62222dd..c91e695 100644
--- a/builtin/update-index.c
+++ b/builtin/update-index.c
@@ -130,7 +130,7 @@ static int test_if_untracked_cache_is_supported(void)
 	if (!mkdtemp(mtime_dir.buf))
 		die_errno("Could not make temporary directory");
 
-	fprintf(stderr, _("Testing "));
+	fprintf(stderr, _("Testing mtime in '%s' "), xgetcwd());
 	atexit(remove_test_directory);
 	xstat_mtime_dir(&st);
 	fill_stat_data(&base, &st);
@@ -1135,10 +1135,16 @@ int cmd_update_index(int argc, const char **argv, const char *prefix)
 		}
 		add_untracked_ident(the_index.untracked);
 		the_index.cache_changed |= UNTRACKED_CHANGED;
-	} else if (untracked_cache == UC_DISABLE && the_index.untracked) {
-		free_untracked_cache(the_index.untracked);
-		the_index.untracked = NULL;
-		the_index.cache_changed |= UNTRACKED_CHANGED;
+		if (verbose)
+			printf(_("Untracked cache enabled for '%s'\n"), get_git_work_tree());
+	} else if (untracked_cache == UC_DISABLE) {
+		if (the_index.untracked) {
+			free_untracked_cache(the_index.untracked);
+			the_index.untracked = NULL;
+			the_index.cache_changed |= UNTRACKED_CHANGED;
+		}
+		if (verbose)
+			printf(_("Untracked cache disabled\n"));
 	}
 
 	if (active_cache_changed) {
-- 
2.7.0.rc2.11.g68ccdd4

  parent reply	other threads:[~2015-12-23 21:04 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-23 21:03 [PATCH v3 00/11] Untracked cache improvements Christian Couder
2015-12-23 21:03 ` [PATCH v3 01/11] dir: free untracked cache when removing it Christian Couder
2015-12-23 21:03 ` [PATCH v3 02/11] update-index: use enum for untracked cache options Christian Couder
2015-12-23 21:03 ` [PATCH v3 03/11] update-index: add --test-untracked-cache Christian Couder
2015-12-23 21:03 ` Christian Couder [this message]
2015-12-24 10:01   ` [PATCH v3 04/11] update-index: add untracked cache notifications Duy Nguyen
2015-12-24 21:11     ` Christian Couder
2015-12-23 21:03 ` [PATCH v3 05/11] update-index: move 'uc' var declaration Christian Couder
2015-12-23 21:03 ` [PATCH v3 06/11] dir: add add_untracked_cache() Christian Couder
2015-12-23 21:03 ` [PATCH v3 07/11] dir: add new_untracked_cache() Christian Couder
2015-12-23 22:53   ` Eric Sunshine
2015-12-24  7:35     ` Christian Couder
2015-12-23 21:03 ` [PATCH v3 08/11] dir: add remove_untracked_cache() Christian Couder
2015-12-23 21:03 ` [PATCH v3 09/11] dir: simplify untracked cache "ident" field Christian Couder
2015-12-23 21:03 ` [PATCH v3 10/11] config: add core.untrackedCache Christian Couder
2015-12-24 10:13   ` Duy Nguyen
2015-12-24 21:10     ` Christian Couder
2015-12-23 21:03 ` [PATCH v3 11/11] t7063: add tests for core.untrackedCache Christian Couder

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1450904639-25592-5-git-send-email-chriscool@tuxfamily.org \
    --to=christian.couder@gmail.com \
    --cc=avarab@gmail.com \
    --cc=chriscool@tuxfamily.org \
    --cc=dturner@twopensource.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=pclouds@gmail.com \
    --cc=peff@peff.net \
    --cc=sunshine@sunshineco.com \
    --cc=tboegi@web.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).