aboutsummaryrefslogtreecommitdiff
path: root/builtin-ls-files.c
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2009-10-12 01:11:57 -0400
committerJunio C Hamano <gitster@pobox.com>2009-10-12 16:12:49 -0700
commitb5227d80aee5173bfda6aa43a890d03110b0df26 (patch)
tree4e48d89e4bdcceeb9f5ae61e82b08df234519455 /builtin-ls-files.c
parentf01f1099f40f24fe6f7802185340a6fa3a3d4f35 (diff)
downloadgit-b5227d80aee5173bfda6aa43a890d03110b0df26.tar.gz
git-b5227d80aee5173bfda6aa43a890d03110b0df26.tar.xz
ls-files: excludes should not impact tracked files
In all parts of git, .gitignore and other exclude files impact only how we treat untracked files; they should have no effect on files listed in the index. This behavior was originally implemented very early on in 9ff768e, but only for --exclude-from. Later, commit 63d285c accidentally caused us to trigger the behavior for --exclude-per-directory. This patch totally ignores excludes for files found in the index. This means we are reversing the original intent of 9ff768e, while at the same time fixing the accidental behavior of 63d285c. This is a good thing, though, as the way that 9ff768e behaved does not really make sense with the way exclusions are used in modern git. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin-ls-files.c')
-rw-r--r--builtin-ls-files.c8
1 files changed, 0 insertions, 8 deletions
diff --git a/builtin-ls-files.c b/builtin-ls-files.c
index da2daf45a..16a137064 100644
--- a/builtin-ls-files.c
+++ b/builtin-ls-files.c
@@ -175,10 +175,6 @@ static void show_files(struct dir_struct *dir, const char *prefix)
if (show_cached | show_stage) {
for (i = 0; i < active_nr; i++) {
struct cache_entry *ce = active_cache[i];
- int dtype = ce_to_dtype(ce);
- if (excluded(dir, ce->name, &dtype) !=
- !!(dir->flags & DIR_SHOW_IGNORED))
- continue;
if (show_unmerged && !ce_stage(ce))
continue;
if (ce->ce_flags & CE_UPDATE)
@@ -191,10 +187,6 @@ static void show_files(struct dir_struct *dir, const char *prefix)
struct cache_entry *ce = active_cache[i];
struct stat st;
int err;
- int dtype = ce_to_dtype(ce);
- if (excluded(dir, ce->name, &dtype) !=
- !!(dir->flags & DIR_SHOW_IGNORED))
- continue;
if (ce->ce_flags & CE_UPDATE)
continue;
err = lstat(ce->name, &st);