From: Johannes Sixt Date: Fri, 01 May 2015 16:13:21 GMT Subject: Re: [PATCH 2/2] lock_packed_refs(): allow retries when acquiring the packed-refs lock Message-ID: <5543A621.7010208@kdbg.org> In-Reply-To: <1430491977-25817-3-git-send-email-mhagger@alum.mit.edu> Am 01.05.2015 um 16:52 schrieb Michael Haggerty: > +test_expect_success 'retry acquiring packed-refs.lock' ' > + LOCK=.git/packed-refs.lock && > + >$LOCK && > + test_when_finished "rm -f $LOCK" && > + { > + ( sleep 1 ; rm -f $LOCK ) & > + } && I haven't tested yet, but I think that this will be problematic on Windows: a directory cannot be removed if it is the current directory of a process. Here, the sub-shell process is alive for a second. If the remainder of the test script completes before the process dies, the test directory cannot be removed. How about this: test_when_finished "wait; rm -f $LOCK" && { sleep 1 & } && ... > + git -c core.packedrefstimeout=3000 pack-refs --all --prune > +' > + > test_done > -- Hannes