From 948a7fd242a28e61e454f62001716af2c9d614b0 Mon Sep 17 00:00:00 2001 From: Jeff King Date: Mon, 5 Sep 2016 17:52:17 -0400 Subject: [PATCH] t5305: use "git -C" This test unpacks objects into a separate repository, and accesses it by setting GIT_DIR in a subshell. We can do the same thing these days by using "git init " and "git -C". In most cases this is shorter, though when there are multiple commands, we may end up repeating the "-C". However, this repetition can actually be a good thing. This patch also fixes a bug introduced by 512477b (tests: use "env" to run commands with temporary env-var settings, 2014-03-18). That commit essentially converted: (GIT_DIR=...; export GIT_DIR cmd1 && cmd2) into: (GIT_DIR=... cmd1 && cmd2) which obviously loses the GIT_DIR setting for cmd2 (we never noticed the bug because it simply runs "cmd2" in the parent repo, which means we were simply failing to test anything interesting). By using "git -C" rather than a subshell, it becomes quite obvious where each command is supposed to be running. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano --- t/t5305-include-tag.sh | 28 +++++++--------------------- 1 file changed, 7 insertions(+), 21 deletions(-) diff --git a/t/t5305-include-tag.sh b/t/t5305-include-tag.sh index 787fc831e3..089a3e9e8c 100755 --- a/t/t5305-include-tag.sh +++ b/t/t5305-include-tag.sh @@ -33,20 +33,14 @@ test_expect_success 'pack without --include-tag' ' test_expect_success 'unpack objects' ' rm -rf clone.git && - ( - GIT_DIR=clone.git && - export GIT_DIR && - git init && - git unpack-objects list.expect && - ( - test_must_fail env GIT_DIR=clone.git git cat-file -e $tag && - git rev-list --objects $commit - ) >list.actual && + test_must_fail git -C clone.git cat-file -e $tag && + git -C clone.git rev-list --objects $commit >list.actual && test_cmp list.expect list.actual ' @@ -59,21 +53,13 @@ test_expect_success 'pack with --include-tag' ' test_expect_success 'unpack objects' ' rm -rf clone.git && - ( - GIT_DIR=clone.git && - export GIT_DIR && - git init && - git unpack-objects list.expect && - ( - GIT_DIR=clone.git && - export GIT_DIR && - git rev-list --objects $tag - ) >list.actual && + git -C clone.git rev-list --objects $tag >list.actual && test_cmp list.expect list.actual '