From: Jeff King Date: Tue, 18 Nov 2008 11:33:16 GMT Subject: Re: [PATCH 5/9] update-index: add --checkout/--no-checkout to update CE_NO_CHECKOUT bit Message-ID: <20081118113316.GA18610@segfault.peff.net> In-Reply-To: <1222833849-22129-6-git-send-email-pclouds@gmail.com> On Wed, Oct 01, 2008 at 11:04:05AM +0700, Nguyễn Thái Ngọc Duy wrote: > +test_expect_success 'setup' ' > + mkdir sub && > + touch 1 2 sub/1 sub/2 && > + git add 1 2 sub/1 sub/2 Mind-boggling, but this manages to break on Solaris. Fix is below. -- >8 -- t2104: touch portability fix Some versions of touch support the syntax: touch [MMDDhhmm[yy]] file... which makes the first argument an optional time specification. They can get confused by touch 1 2 foo bar as they assume that '1' is a bogus time specification. This is broken, for example, with /bin/touch on Solaris 8. To fix it, we'll just reverse the order of arguments so that an unambiguous argument is in the slot for the optional time specification. Signed-off-by: Jeff King --- Note that this has implications for 'touch "$FOO" "$BAR"' used in scripts if FOO might be entirely numeric. However, a quick grep shows we usually touch one file at a time. t/t2104-update-index-no-checkout.sh | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/t/t2104-update-index-no-checkout.sh b/t/t2104-update-index-no-checkout.sh index be9f913..37a6861 100755 --- a/t/t2104-update-index-no-checkout.sh +++ b/t/t2104-update-index-no-checkout.sh @@ -9,7 +9,7 @@ test_description='git update-index no-checkout bits (a.k.a sparse checkout)' test_expect_success 'setup' ' mkdir sub && - touch 1 2 sub/1 sub/2 && + touch sub/1 sub/2 1 2 && git add 1 2 sub/1 sub/2 ' -- 1.6.0.4.984.gbd0b7