From: Junio C Hamano Date: Sat, 29 Jul 2006 01:54:24 GMT Subject: Re: log and diff family: honor config even from subdirectories Message-ID: <7v3bclkwfj.fsf@assigned-by-dhcp.cox.net> In-Reply-To: Linus Torvalds writes: > I'd actually _like_ to do the setup unconditionally inside the git wrapper > (early - to make sure that we don't have this bug), but some things (at > least "init-db", "clone" and "ls-remote") are obviously not supposed to do > it, since they work outside of a git directory. So either we need to do it > in each builtin command separately, or we'd need to add a flag in the > command descriptor array. > > Any clever ideas? > > Linus No clever ideas, but I agree it would be _very_ nice if we could do the setup unconditionally and early. Some commands that call setup want to know prefix, so we would need to introduce a global to hold the prefix for them. I do not do this myself, but it is conceivable that you might want to be able to set GIT_DIR to point at somewhere outside your working tree hierarchy, _and_ still work in a subdirectory. The current setup does not allow you to do that; we could introduce GIT_PROJECT_ROOT environment variable, and when GIT_PROJECT_ROOT exists difference between getcwd() and the project root could become the value of prefix.