Skip to content

Commit 6d19db1

Browse files
chriscoolgitster
authored andcommitted
update-index: add untracked cache notifications
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. Helped-by: Duy Nguyen <[email protected]> Signed-off-by: Christian Couder <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent eaab83d commit 6d19db1

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

builtin/update-index.c

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ static int test_if_untracked_cache_is_supported(void)
130130
if (!mkdtemp(mtime_dir.buf))
131131
die_errno("Could not make temporary directory");
132132

133-
fprintf(stderr, _("Testing "));
133+
fprintf(stderr, _("Testing mtime in '%s' "), xgetcwd());
134134
atexit(remove_test_directory);
135135
xstat_mtime_dir(&st);
136136
fill_stat_data(&base, &st);
@@ -1135,10 +1135,14 @@ int cmd_update_index(int argc, const char **argv, const char *prefix)
11351135
}
11361136
add_untracked_ident(the_index.untracked);
11371137
the_index.cache_changed |= UNTRACKED_CHANGED;
1138-
} else if (untracked_cache == UC_DISABLE && the_index.untracked) {
1139-
free_untracked_cache(the_index.untracked);
1140-
the_index.untracked = NULL;
1141-
the_index.cache_changed |= UNTRACKED_CHANGED;
1138+
report(_("Untracked cache enabled for '%s'"), get_git_work_tree());
1139+
} else if (untracked_cache == UC_DISABLE) {
1140+
if (the_index.untracked) {
1141+
free_untracked_cache(the_index.untracked);
1142+
the_index.untracked = NULL;
1143+
the_index.cache_changed |= UNTRACKED_CHANGED;
1144+
}
1145+
report(_("Untracked cache disabled"));
11421146
}
11431147

11441148
if (active_cache_changed) {

0 commit comments

Comments
 (0)