From: Alex Riesen Date: Sat, 26 Mar 2011 10:08:06 GMT Subject: Re: [PATCH] HOME must be set before calling git-init when creating test repositories Message-ID: In-Reply-To: <7vvcz64ygm.fsf@alter.siamese.dyndns.org> On Fri, Mar 25, 2011 at 23:39, Junio C Hamano wrote: > Alex Riesen writes: > >> On Fri, Mar 25, 2011 at 22:30, Junio C Hamano wrote: >>> Alex Riesen writes: >>> >>>> On Fri, Mar 25, 2011 at 21:49, Junio C Hamano wrote: >>>> >>>>> Doesn't this change the location of HOME used during the test as well? >>>> >>>> As long as the test only includes test-lib.sh only once - it doesn't. >>>> Why? Or rather, how? >>> >>> I thought you moved HOME=$(pwd) across "cd somewhere-else".  Doesn't it >>> change what is returned from pwd? >>> >> >> Oh, it does. That's why the second patch (prefixed "[PATCH, fixed]"). >> It makes HOME to be "$(pwd)/somewhere-else", or precisely: >> >>   HOME="$(pwd)"/"$test" >>   export HOME > > What happens to people who has non-empty "$root", iow, their $test begins > with '/'? It's still under $test then. > I am not saying that having HOME at t/ directory instead of t/trash-*/ > directory would necessarily break things (I don't know).  I am just > pointing out that the patch changes behaviour. It does. I still think we're better off using the test's trash directory for a this. For instance, consider the case when a user's .gitconfig created by one of the tests collides with .gitconfig's of the other tests. Either when running in parallel or just sequentially: the .gitconfig in "t/" is not cleaned up after a test finishes.