All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marius Storm-Olsen <marius@trolltech.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH] Ensure that commit/status don't stat all files when core.ignoreStat = true
Date: Tue, 27 May 2008 22:21:52 +0200	[thread overview]
Message-ID: <483C6D60.7090705@trolltech.com> (raw)
In-Reply-To: <7v7idf1pqy.fsf@gitster.siamese.dyndns.org>

Junio C Hamano said the following on 27.05.2008 22:00:
> Marius Storm-Olsen <marius@trolltech.com> writes:
> The description for core.ignorestat in Documentation/config.txt is quite
> bogus.  That single bit does _not_ determine globally if we lstat(2) or
> not.  The description in Documentation/git-update-index.txt about it (look
> for the section "Using assume unchanged bit") accurately describes what it
> is meant to do.  The rules are:

Aha! Thanks for the detailed explanation of core.ignoreStat. Given 
your description, the patch is certainly bogus.

> Would it be sufficient for what you are trying to do if you changed that
> test to something like this?
> 
>         /*
>          * CE_VALID means the user promised us that the change to
>          * the work tree does not matter and told us not to worry.
>          */
> 	if (!ignore_valid && (ce->ce_flags & CE_VALID)) {
>         	ce_mark_uptodate(ce);
> 		return ce;
> 	}

I'll give it a shot tomorrow, to see how it affects my use-cases.
Thanks.


>> diff --git a/wt-status.c b/wt-status.c
>> index a44c543..72db466 100644
>> --- a/wt-status.c
>> +++ b/wt-status.c
...

> The core.ignorestat variable does not have anything to do with showing
> untracked files.  It is about "do we mark the added path as CE_VALID,
> meaning that we do not have to lstat(2) them?"  IOW, it is about tracked
> files.
> 
> While it might be useful in certain workflows to ignore untracked files, I
> do not think it is a good idea to overload such an unrelated meaning to
> the variable.

Indeed. I'll resend a new patch tomorrow with a new variable which 
will only affect the stat'ing of untracked files, if you think that's 
reasonable. IMO, we certainly need a way of avoiding to stat the whole 
filetree on commits and status. I mean, that's what you have the -u 
option for, right? :-) In any case, an opt-in feature, of course.

Thanks for checking the patch!

--
.marius

  reply	other threads:[~2008-05-27 20:22 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-27  9:29 [PATCH] Ensure that commit/status don't stat all files when core.ignoreStat = true Marius Storm-Olsen
2008-05-27 20:00 ` Junio C Hamano
2008-05-27 20:21   ` Marius Storm-Olsen [this message]
2008-05-30 11:14     ` [PATCH 1/3] Clearify the documentation for core.ignoreStat Marius Storm-Olsen
2008-05-30  8:54       ` [PATCH 2/3] Introduce core.showUntrackedFiles to make it possible to disable showing of untracked files Simon Hausmann
2008-05-30 12:38         ` [PATCH 3/3] Add shortcut in refresh_cache_ent() for marked entries Marius Storm-Olsen
2008-05-30 13:14           ` Marius Storm-Olsen
2008-05-30 13:10         ` [PATCH 2/3] Introduce core.showUntrackedFiles to make it possible to disable showing of untracked files Marius Storm-Olsen
2008-05-30 13:16         ` Marius Storm-Olsen
2008-05-30 20:27         ` Junio C Hamano
2008-05-31  6:41           ` Marius Storm-Olsen
2008-06-03 13:09           ` [PATCH] Add an optional <mode> argument to commit/status -u|--untracked-files option Marius Storm-Olsen
2008-06-03 13:12             ` [PATCH] Add configuration option for default untracked files mode Marius Storm-Olsen
2008-06-03 20:02             ` [PATCH] Add an optional <mode> argument to commit/status -u|--untracked-files option Junio C Hamano
2008-06-03 21:00               ` Marius Storm-Olsen
2008-06-05  8:31               ` [PATCH 1/3] " Marius Storm-Olsen
2008-06-05 12:22                 ` [PATCH 2/3] Add argument 'no' commit/status option -u|--untracked-files Marius Storm-Olsen
2008-06-05 12:47                   ` [PATCH 3/3] Add configuration option for default untracked files mode Marius Storm-Olsen
2008-06-07  1:55                 ` [PATCH 1/3] Add an optional <mode> argument to commit/status -u|--untracked-files option Junio C Hamano
2008-06-09  6:54                   ` Marius Storm-Olsen
2008-06-05  8:31                     ` Marius Storm-Olsen
2008-06-05 12:22                       ` [PATCH 2/3] Add argument 'no' commit/status option -u|--untracked-files Marius Storm-Olsen
2008-06-05 12:47                         ` [PATCH 3/3] Add configuration option for default untracked files mode Marius Storm-Olsen
2008-06-10  6:23                     ` [PATCH 1/3] Add an optional <mode> argument to commit/status -u|--untracked-files option Junio C Hamano
2008-06-03 20:14             ` [PATCH] " Jeff King
2008-06-03 21:17               ` Marius Storm-Olsen
2008-06-03 22:26                 ` しらいしななこ
2008-06-03 22:27                 ` Jeff King
     [not found]                 ` <200806032227.m53MRLeD005668@mi0.bluebottle.com>
2008-06-03 22:53                   ` Jeff King
2008-06-06  6:32             ` Alex Riesen
2008-06-06  6:56               ` Marius Storm-Olsen
  -- strict thread matches above, loose matches on Subject: below --
2008-05-27  8:15 [PATCH] Ensure that commit/status don't stat all files when core.ignoreStat = true Marius Storm-Olsen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=483C6D60.7090705@trolltech.com \
    --to=marius@trolltech.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.