Merge branch 'kb/status-ignored-optim-2'
commit7093d2c0dd986c70a98b712440b34f98599b3539
authorJunio C Hamano <gitster@pobox.com>
Tue, 23 Apr 2013 18:21:23 +0000 (23 11:21 -0700)
committerJunio C Hamano <gitster@pobox.com>
Tue, 23 Apr 2013 18:21:23 +0000 (23 11:21 -0700)
treed4c22d38c71d388dce709fc36d6318ca873f9570
parent9e94f9ba9e902d48c75df6ba53e6e87cefe187a8
parent0aaf62b6e018484bad9cea47dc00644d57b7ad49
Merge branch 'kb/status-ignored-optim-2'

Fixes a handful of issues in the code to traverse working tree to
find untracked and/or ignored files, cleans up and optimizes the
codepath in general.

* kb/status-ignored-optim-2:
  dir.c: git-status --ignored: don't scan the work tree twice
  dir.c: git-status --ignored: don't scan the work tree three times
  dir.c: git-status: avoid is_excluded checks for tracked files
  dir.c: replace is_path_excluded with now equivalent is_excluded API
  dir.c: unify is_excluded and is_path_excluded APIs
  dir.c: move prep_exclude
  dir.c: factor out parts of last_exclude_matching for later reuse
  dir.c: git-clean -d -X: don't delete tracked directories
  dir.c: make 'git-status --ignored' work within leading directories
  dir.c: git-status --ignored: don't list empty directories as ignored
  dir.c: git-ls-files --directories: don't hide empty directories
  dir.c: git-status --ignored: don't list empty ignored directories
  dir.c: git-status --ignored: don't list files in ignored directories
  dir.c: git-status --ignored: don't drop ignored directories
builtin/add.c
t/t3001-ls-files-others-exclude.sh