Teach ls-files --with-tree=<tree> to work with options other than -c
Originally --with-tree=<tree> was designed for the sole purpose of checking if a given pathspec makes sense as a parameter to git-commit using it in conjunction with --error-unmatch. It had logic to avoid showing the same entry (one came from the original index, another from the overlayed tree) twice so that it works with -c (i.e. "show-cached"), but otherwise it was not designed to work with the flags such as -m, -d, etc. This teaches the same logic to cover the codepath for -m and -d. Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano committed
Nov 16, 2008 at 00:10 UTC
4b4e26d21f77d9e90125ca1c8f48592a9cd6f543
1 file changed
+2
builtin-ls-files.c
+2
@@ -227,6 +227,8 @@ static void show_files(struct dir_struct *dir, const char *prefix)
227
int dtype = ce_to_dtype(ce);
228
if (excluded(dir, ce->name, &dtype) != dir->show_ignored)
229
continue;
230
+ if (ce->ce_flags & CE_UPDATE)
231
+ continue;
232
err = lstat(ce->name, &st);
233
if (show_deleted && err)
234
show_ce_entry(tag_removed, ce);