Re: [PATCH v2] wt-status: Show ignored files in untracked dirs
From: Jeff King <hidden>
Date: 2016-06-15 22:55:36
On Wed, Dec 26, 2012 at 06:37:55PM -0800, Junio C Hamano wrote:
Antoine Pelisse [off-list ref] writes:quoted
When looking for ignored files, we do not recurse into untracked directory, and simply consider the directory ignored status.When asked to show ignored ones, instead of listing all ignored files in such a directory, we just say "everything in this directory is ignored"? That sounds like a more desirable behaviour, than listing everything there, at least to me, but perhaps I am missing something.
I do not use this feature myself, but I would think that it should
respect the same DIR_SHOW_OTHER_DIRECTORIES flag (or a parallel flag)
that we already hook into "--untracked={all,normal}".
IOW, given:
git init
mkdir untracked ignored
>untracked/file
>ignored/file
echo ignored >.git/info/exclude
I would expect:
$ git status --short --ignored --untracked=normal
?? untracked/
!! ignored/
$ git status --short --ignored --untracked=all
?? untracked/file
!! ignored/file
I do not know if anybody cares about the distinction, but optionally we
could give --ignored its own selector, like:
$ git status --short --ignored=all --untracked=normal
?? untracked/
!! ignored/file
where obviously it would default to "none" (whereas untracked defaults
to "normal"). But the behavior with Antoine's patch is:
$ git status --short --ignored --untracked=normal
?? untracked/
!! ignored
$ git status --short --ignored --untracked=all
?? untracked/file
!! ignored
which seems wrong to me for two reasons:
1. It does not recurse for ignored but untracked entries. Neither does
the current code, but I think it should.
2. It loses the trailing slash from the ignored directory in both
cases (which is printed by the current code).
-Peff