Re: git status --ignored
- From
Jeff King <peff@peff.net>
- Date
- Jun 2, 2011, 05:54 UTC
- Message-ID
- <20110602055449.GA28292@sigill.intra.peff.net>
- In-Reply-To
- <7vr57cerxo.fsf@alter.siamese.dyndns.org>
On Wed, Jun 01, 2011 at 10:13:55PM -0700, Junio C Hamano wrote:
Show 18 quoted lines
> Andrew Spiers <aspiers@vpac.org> writes: > > > This looks like a bug in git 1.7.4.1. > > > > git status --ignored does not show my ignored files and > > directories. git status -h suggests it should. > > git status --ignored -h does show my ignored files and directories. > > Does not reproduce for me. With --ignored (with or without -s), I see all > the dot-o files that are ignored by .gitignore rules that are usually > omitted from status output without --ignored. > > $ make >/dev/null 2>&1 > $ rungit v1.7.3 status | grep -F git.o > $ rungit v1.7.3 status --ignored | grep -F git.o > # git.o > $ rungit v1.7.3 status -s --ignored | grep -F git.o > !! git.o
I can reproduce here. The faulty logic means the bug only shows when you actually have no real untracked files. You should keep your git directory cleaner. ;)
-- >8 -- Subject: [PATCH] status: fix bug with missing --ignore files
Commit 1b908b6 (wt-status: rename and restructure status-print-untracked, 2010-04-10) converted the wt_status_print_untracked function into wt_status_print_other, taking a string_list of either untracked or ignored items to print. However, the "nothing to show" early return still checked the wt_status->untracked list instead of the passed-in list.
That meant that if we had ignored items to show, but no untracked items, we would erroneously exit early and fail to show the ignored items.
Signed-off-by: Jeff King <peff@peff.net> --- wt-status.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/wt-status.c b/wt-status.c index 9f4e0ba..0237772 100644 --- a/wt-status.c +++ b/wt-status.c @@ -642,7 +642,7 @@ static void wt_status_print_other(struct wt_status *s, int i; struct strbuf buf = STRBUF_INIT; - if (!s->untracked.nr) + if (!l->nr) return; wt_status_print_other_header(s, what, how);
-- 1.7.6.rc0.34.gc8c48c.dirty