{"thread":{"id":"29651","subject":"git-status does not propagate -uall to submodules","startedAt":"2012-02-17T09:18:57Z","lastAt":"2012-02-17T22:11:06Z","messageCount":2,"participants":["Thomas Rast","Jens Lehmann"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"184870","messageId":"874nupq0la.fsf@thomas.inf.ethz.ch","threadId":"29651","inReplyTo":null,"subject":"git-status does not propagate -uall to submodules","fromName":"Thomas Rast","fromEmail":"trast@inf.ethz.ch","sentAt":"2012-02-17T09:18:57Z","receivedAt":"2012-02-17T09:18:57Z","isPatch":false,"sender":{"key":"tr@thomasrast.ch","avatar":"https://avatars.githubusercontent.com/u/153510?v=4"},"body":"Hi,\n\nWhile helping with the submodule display on #git I noticed that if you\nhave a submodule with status.showuntrackedfiles=no, and run 'git status\n-uall' from the superproject, then this does not propagate into the\nsubmodule's status.  In code:\n\n  $ (cd bar && git config status.showuntrackedfiles)                  \n  no                                                                                                 \n  $ git ls-files -s                                                   \n  100644 926c01b7259c489a422442a8dc5cb5ea7c58f60c 0       .gitmodules                                \n  160000 eb5af46e1a938d064c9f7bae9561013654a43316 0       bar                                        \n  $ (cd bar && git status -s -unormal)\n  ?? otheruntracked                                                                                  \n  ?? untracked\n  $ git status\n  # On branch master\n  nothing to commit (working directory clean)\n\nSo far that's expected; after all the submodule is configured not to\ndisplay untracked files.  But with -uall:\n\n  $ git status -uall\n  # On branch master\n  nothing to commit (working directory clean)\n\nShouldn't the -uall propagate, since the user is explicitly asking for\nit?  That is, the display should summarize what git-status *with the\nsame arguments* would show inside the submodules?\n\n-- \nThomas Rast\ntrast@{inf,student}.ethz.ch\n"},{"id":"184917","messageId":"4F3ED07A.8090508@web.de","threadId":"29651","inReplyTo":"874nupq0la.fsf@thomas.inf.ethz.ch","subject":"Re: git-status does not propagate -uall to submodules","fromName":"Jens Lehmann","fromEmail":"jens.lehmann@web.de","sentAt":"2012-02-17T22:11:06Z","receivedAt":"2012-02-17T22:11:06Z","isPatch":false,"sender":{"key":"jens.lehmann@web.de","avatar":"https://avatars.githubusercontent.com/u/135220?v=4"},"body":"Am 17.02.2012 10:18, schrieb Thomas Rast:\n> Hi,\n> \n> While helping with the submodule display on #git I noticed that if you\n> have a submodule with status.showuntrackedfiles=no, and run 'git status\n> -uall' from the superproject, then this does not propagate into the\n> submodule's status.  In code:\n> \n>   $ (cd bar && git config status.showuntrackedfiles)                  \n>   no                                                                                                 \n>   $ git ls-files -s                                                   \n>   100644 926c01b7259c489a422442a8dc5cb5ea7c58f60c 0       .gitmodules                                \n>   160000 eb5af46e1a938d064c9f7bae9561013654a43316 0       bar                                        \n>   $ (cd bar && git status -s -unormal)\n>   ?? otheruntracked                                                                                  \n>   ?? untracked\n>   $ git status\n>   # On branch master\n>   nothing to commit (working directory clean)\n> \n> So far that's expected; after all the submodule is configured not to\n> display untracked files.  But with -uall:\n> \n>   $ git status -uall\n>   # On branch master\n>   nothing to commit (working directory clean)\n> \n> Shouldn't the -uall propagate, since the user is explicitly asking for\n> it?  That is, the display should summarize what git-status *with the\n> same arguments* would show inside the submodules?\n\nYes, that makes sense. In 3bfc45047 (git status: ignoring untracked\nfiles must apply to submodules too) I added that using -uno will\npropagate into submodules. But -uall (and I suspect -unormal too)\nshould also be passed to the status commands forked inside the\nsubmodules (even though in both cases -unormal should suffice as only\nthe presence or absence of untracked files will be shown anyway).\n\nBut opposed to -uno, which overrides any diff.ignoreSubmodules or\nsubmodule.<name>.ignore settings for the submodules, what should\n-unormal and -uall do? These options are used to override the\nstatus.showuntrackedfiles setting, so I suspect even when these\noptions are given submodules which are configured to ignore untracked\nfiles via diff.ignoreSubmodules or submodule.<name>.ignore should\nstill be dropped, right?\n"}]}