git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: git-status does not propagate -uall to submodules

From
Jens Lehmann <jens.lehmann@web.de>
Date
Feb 17, 2012, 22:11 UTC
Message-ID
<4F3ED07A.8090508@web.de>
In-Reply-To
<874nupq0la.fsf@thomas.inf.ethz.ch>
Am 17.02.2012 10:18, schrieb Thomas Rast:
Show 29 quoted lines
> Hi,
> 
> While helping with the submodule display on #git I noticed that if you
> have a submodule with status.showuntrackedfiles=no, and run 'git status
> -uall' from the superproject, then this does not propagate into the
> submodule's status.  In code:
> 
>   $ (cd bar && git config status.showuntrackedfiles)                  
>   no                                                                                                 
>   $ git ls-files -s                                                   
>   100644 926c01b7259c489a422442a8dc5cb5ea7c58f60c 0       .gitmodules                                
>   160000 eb5af46e1a938d064c9f7bae9561013654a43316 0       bar                                        
>   $ (cd bar && git status -s -unormal)
>   ?? otheruntracked                                                                                  
>   ?? untracked
>   $ git status
>   # On branch master
>   nothing to commit (working directory clean)
> 
> So far that's expected; after all the submodule is configured not to
> display untracked files.  But with -uall:
> 
>   $ git status -uall
>   # On branch master
>   nothing to commit (working directory clean)
> 
> Shouldn't the -uall propagate, since the user is explicitly asking for
> it?  That is, the display should summarize what git-status *with the
> same arguments* would show inside the submodules?

Yes, that makes sense. In 3bfc45047 (git status: ignoring untracked files must apply to submodules too) I added that using -uno will propagate into submodules. But -uall (and I suspect -unormal too) should also be passed to the status commands forked inside the submodules (even though in both cases -unormal should suffice as only the presence or absence of untracked files will be shown anyway).

But opposed to -uno, which overrides any diff.ignoreSubmodules or submodule.<name>.ignore settings for the submodules, what should -unormal and -uall do? These options are used to override the status.showuntrackedfiles setting, so I suspect even when these options are given submodules which are configured to ignore untracked files via diff.ignoreSubmodules or submodule.<name>.ignore should still be dropped, right?

Previous: Thomas Rast
Message 2 of 2 in “git-status does not propagate -uall to submodules”
  1. Thomas RastFeb 17, 2012
  2. Jens LehmannFeb 17, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.