Re: bug: 'core.logallrefupdates' is not set by default in non-bare repository
- From
Jeff King <peff@peff.net>
- Date
- Aug 31, 2016, 10:48 UTC
- Message-ID
- <20160831104825.quyqb54bo5k7fdxs@sigill.intra.peff.net>
- In-Reply-To
- <1472634746.4265.47.camel@kaarsemaker.net>
On Wed, Aug 31, 2016 at 11:12:26AM +0200, Dennis Kaarsemaker wrote:
> That is indeed a bug. git reads the config of t1 and then thinks a > template config has set that value, so it won't override it.
This is a regression in v2.9.0 due to my ae5f677 (lazily load core.sharedrepository, 2016-03-11).
> This is caused by git init reading the config via > get_shared_repository. The comment above it indicates that this may not > be needed, and indeed not doing it makes this bug go away.
Hrm. I'm not sure if that will work, though, because we may call get_shared_repository() from other code-paths (e.g., anything that calls adjust_shared_perm(), like safe_create_leading_directories).
We may need to do something like turn off the need_shared_repository_from_config in init-db, since I think it would not want to ever read from the default config sources in most of its code-paths (OTOH, it should in theory respect core.sharedRepository in ~/.gitconfig, so maybe there is another more elegant way of handling this).
I'm out of time for the day, so it will be a while before I can dig further. Please feel free to figure it out while I am sleeping. :)
-Peff