On Wed, Feb 22, 2017 at 09:36:12AM -0800, Junio C Hamano wrote: > >> My gut feeling is that we should do the selective/filtered include > >> Peff mentioned when a repository is known to be used as a submodule > >> of somebody else. > > > > Does the management of these submodue-related config values > > become easier if, instead of placing them in .config, we > > place them in a git/.context file? > > Do you mean that Git users that use submodules adopt a convention > where a separate file in $GIT_DIR of the toplevel superproject holds > pieces of configuration that are meant to be shared between the > superproject and across all its submodules, and the $GIT_DIR/config > file in submodules and the superproject all include that shared one > via include.path mechanism? > > That may allow us to do without being responsible for sifting of > configuration variables into safe and unsafe bins. > > I dunno. Hmm. I certainly like that we punt on having to decide on the "should this be shared with submodules" decision. That makes the end result more flexible, and we don't have to get into a never-ending stream of "whitelist this config option" patches. My only concern is that it's not as discoverable. In the situation that kicked off this thread, somebody put url.X.insteadOf into their super-project .git/config, expecting it to work in the submodules. That _still_ wouldn't work with this proposal. They'd have to: 1. Put it in .git/context (or whatever we call it) 2. Maybe add include.path=context in .git/config if they want the config shared with the super-project (or this could be automatic?) I guess it gives _a_ solution, which is more than we have now, but it doesn't feel very ergonomic. -Peff