Re: [PATCH] test: fix t7001 cp to use POSIX options
- From
Kyle J. McKay <mackyle@gmail.com>
- Date
- Apr 11, 2014, 13:44 UTC
- Message-ID
- <4def160d638b09b02e04f45688c41a8@74d39fa044aa309eaea14b9f57fe79c>
- In-Reply-To
- <20140411114338.GD28858@sigill.intra.peff.net>
On Apr 11, 2014, at 04:43, Jeff King wrote:
Show 20 quoted lines
> On Fri, Apr 11, 2014 at 01:24:02AM -0700, Kyle J. McKay wrote: > >> Since 11502468 and 04c1ee57 (both first appearing in v1.8.5), the >> t7001-mv test has used "cp -a" to perform a copy in several of the >> tests. >> >> However, the "-a" option is not required for a POSIX cp utility and >> some platforms' cp utilities do not support it. >> >> The POSIX equivalent of -a is -R -P -p. >> >> Change "cp -a" to "cp -R -P -p" so that the t7001-mv test works >> on systems with a cp utility that only implements the POSIX >> required set of options and not the "-a" option. > > I wonder if the "-R" is the part that we actually care about here. > Including the others does not hurt in that case, but using only "-R" > would perhaps make it more obvious to a later reader of the code > exactly > what we are trying to do.
I was wondering the same thing myself, but Jens is on the Cc: list and added both of those, so I'm hoping he'll pipe in here about that. I did notice that the other test scripts seem to only use -R, so that would definitely be a more consistent change to match the rest of the tests.
In any case v2 of the patch with just -R is attached below. It seems to pass the tests so it's probably fine.
--Kyle
---- 8< ----
Subject: [PATCH v2] test: fix t7001 cp to use POSIX options
Since 11502468 and 04c1ee57 (both first appearing in v1.8.5), the t7001-mv test has used "cp -a" to perform a copy in several of the tests.
However, the "-a" option is not required for a POSIX cp utility and some platforms' cp utilities do not support it.
The POSIX equivalent of -a is -R -P -p, but the only option we actually care about for the test is -R.
Change "cp -a" to "cp -R" so that the t7001-mv test works on systems with a cp utility that only implements the POSIX required set of options and not the "-a" option.
Signed-off-by: Kyle J. McKay <mackyle@gmail.com>
--- t/t7001-mv.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/t/t7001-mv.sh b/t/t7001-mv.sh index 215d43d6..675ca5bd 100755 --- a/t/t7001-mv.sh +++ b/t/t7001-mv.sh @@ -308,7 +308,7 @@ test_expect_success 'git mv moves a submodule with a .git directory and no .gitm ( cd sub && rm -f .git && - cp -a ../.git/modules/sub .git && + cp -R ../.git/modules/sub .git && GIT_WORK_TREE=. git config --unset core.worktree ) && mkdir mod && @@ -331,7 +331,7 @@ test_expect_success 'git mv moves a submodule with a .git directory and .gitmodu ( cd sub && rm -f .git && - cp -a ../.git/modules/sub .git && + cp -R ../.git/modules/sub .git && GIT_WORK_TREE=. git config --unset core.worktree ) && mkdir mod &&
-- tg: (0bc85abb..) t/t7001-posix-cp (depends on: maint)