Subject: Re: [PATCH 0/2] "git add -A/--no-all" finishing touches

From: Jonathan Nieder <[email-masked]>
Date: Thu, 25 Apr 2013 16:56:24 -0700

Junio C Hamano wrote:
>> Jonathan Nieder <[email-masked]> writes:

>>> Do you mean files that were touched but have no content change, or
>>> something more subtle?
[...]
> Ahh, I haven't run anything under the debugger yet, but I think I
> know what is going on.
>
> Don't we limit our "update-index --refresh" equivalent to the
> original pathspec, even though your "-u/-A sans pathspec" warning
> detection relies on grabbing the changes from the entire tree?

I think it's more basic than that.  "git add" doesn't bother to
run an "update-index --refresh" equivalent before its main loop
unless you pass --refresh to it, since reading files to compare
them to the index would be duplicated work.  The files hit in
update_callback() are only potentially modified.

Maybe the warning should happen after add_file_to_index() has run,
letting git compare the old and new index entries for that path?

Jonathan