Subject: Re: Request feature: –no-submodule

From: Junio C Hamano <[email-masked]>
Date: Fri, 04 Jun 2021 02:40:25 +0900

Taylor Blau <[email-masked]> writes:

> Mmm, that's a convincing set of reasons to think that this is a bad
> idea. (And I was sort of on the fence about it anyway by posting the
> whole thing as a short diff instead of a polished patch).
>
>> I wonder if the "attr" magic of the pathspec, that allows you to
>> choose paths based on the attributes you set on them, is what the
>> original requestor missed.
>
> Maybe... but relying on the attr magic for this particular case would
> force the requester to set that attribute on all submodules in their
> project, and constantly keep that in-sync with their .gitmodules.

Well, it contradicts with the above "convincing" adjective, and
shows that you are not convinced that "submodule"-ness is not all
that essential and it merely is an artifact that the paths that the
original requester happens to be uninterested in are all submodules.

But if we agree that focusing too narrowly on "submodule"-ness is a
bad idea and open our mind to elsewhere, we'd realize that once we
learn that we can "mark" any path with attributes and use that in
magic pathspec, we can mark not just submodules but a subdirectory
as "uninteresting", which will not become useless even when it turns
out that "submodule"-ness wasn't really what the request was about.

Besides, you can iterate over the available submodules with "git
submodule foreach" fairly mechanically, and maintaining the
attribute per path shouldn't be all that hard, I would imagine.