Skip to content

Commit

Permalink
Merge branch 'jk/maint-1.6.3-ls-files-i' into maint
Browse files Browse the repository at this point in the history
* jk/maint-1.6.3-ls-files-i:
  ls-files: unbreak "ls-files -i"
  • Loading branch information
Junio C Hamano committed Nov 16, 2009
2 parents 3e606ea + 500348a commit 958742b
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 2 deletions.
6 changes: 4 additions & 2 deletions Documentation/git-ls-files.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,10 @@ OPTIONS

-i::
--ignored::
Show ignored files in the output.
Note that this also reverses any exclude list present.
Show only ignored files in the output. When showing files in the
index, print only those matched by an exclude pattern. When
showing "other" files, show only those matched by an exclude
pattern.

-s::
--stage::
Expand Down
8 changes: 8 additions & 0 deletions builtin-ls-files.c
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,10 @@ 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 (dir->flags & DIR_SHOW_IGNORED &&
!excluded(dir, ce->name, &dtype))
continue;
if (show_unmerged && !ce_stage(ce))
continue;
if (ce->ce_flags & CE_UPDATE)
Expand All @@ -182,6 +186,10 @@ 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 (dir->flags & DIR_SHOW_IGNORED &&
!excluded(dir, ce->name, &dtype))
continue;
if (ce->ce_flags & CE_UPDATE)
continue;
err = lstat(ce->name, &st);
Expand Down
8 changes: 8 additions & 0 deletions t/t3003-ls-files-exclude.sh
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,12 @@ test_expect_success 'add file to gitignore' '
'
check_all_output

test_expect_success 'ls-files -i lists only tracked-but-ignored files' '
echo content >other-file &&
git add other-file &&
echo file >expect &&
git ls-files -i --exclude-standard >output &&
test_cmp expect output
'

test_done

0 comments on commit 958742b

Please sign in to comment.