Junio C Hamano [off-list ref] writes:
Matheus Tavares [off-list ref] writes:
quoted
refresh_index() optionally takes a seen[] array to mark the pathspec
items that had matches in the index. This is used by `git add --refresh`
to find out if there was any pathspec without matches, and display an
error accordingly.
It smells a bit iffy in that this allows a path to "match" a pattern
but yet not result in seen[] to record that the pattern participated
in the match. If the series is working towards certain operations
not to touch paths that are outside the sparse checkout, shouldn't
it be making these paths not to match the pattern, and by doing so
it would automatically cause the pattern to be considered "not yet
matching any path" when the matcher attempts to match the pattern to
such a path?
In other words, the change makes me wonder why we are not adding a
flag that says "do we or do we not want to match paths outside the
sparse checkout cone?", with which the seen[] would automatically
record the right thing.