From: Mark Levedahl Date: Sat, 23 Aug 2008 00:01:02 GMT Subject: Re: [PATCH 1/2] git-submodule: replace duplicated code with a module_list function Message-ID: <48AF533E.9020102@gmail.com> In-Reply-To: <7vpro064qz.fsf@gitster.siamese.dyndns.org> Junio C Hamano wrote: >> cmd_foreach() >> { >> - git ls-files --stage | grep '^160000 ' | >> + module_list | >> > > Thanks. > > I think the original "foreach" implementation does not pay attention to > "$@" not by design but by mistake, and we should pass "$@" here as well. > > Other than that I do not see anything obviously wrong with the patch. > > Mark? > > Actually, this was by design, not mistake, though we did not discuss this at all. I'm not sure what the semantics would / should be: first of all, some part of "$@" is the command to be executed in each submodule, and as written "$@" in its entirety is what is used. Also, as written and documented, foreach operates in each checked out submodule, not a subset. I guess the basic questions are: a) What specific option or options to git ls-files makes sense here? b) How do we distinguish the ls-files options from the command to be executed? Mark