From: Junio C Hamano <gitster@pobox.com>
To: Jialong Wang <jerrywang183@yahoo.com>
Cc: git@vger.kernel.org
Subject: Re: [GSoC PATCH] t2203: avoid suppressing git status exit code
Date: Tue, 17 Mar 2026 12:01:18 -0700 [thread overview]
Message-ID: <xmqq7bral1q9.fsf@gitster.g> (raw)
In-Reply-To: <20260317185048.74421-1-jerrywang183@yahoo.com> (Jialong Wang's message of "Tue, 17 Mar 2026 14:50:36 -0400")
Jialong Wang <jerrywang183@yahoo.com> writes:
> Subject: Re: [GSoC PATCH] t2203: avoid suppressing git status exit code
We saw a patch <20260317011544.65952-1-jerrywang183@yahoo.com> that
looks similar, sent by you about 18 hours ago.
Please do *NOT* send an update without marking it as updating what
other patch it is replacing. Turning "[PATCH]" to "[PATCH v2]" is a
minimum. Explaining what changed below the three-dash line after
your sign-off would be a standard practice. Sending the updated
patch as a reply to the original would also be a good idea.
> When git status is piped into grep, the exit status of the Git
> command is hidden by the pipeline. Capture the status output in a
> temporary file first, and then filter it as needed, so that any
> failure from git status is still noticed by the test suite.
>
> Signed-off-by: Jialong Wang <jerrywang183@yahoo.com>
> ---
> t/t2203-add-intent.sh | 24 ++++++++++++++++--------
> 1 file changed, 16 insertions(+), 8 deletions(-)
>
> diff --git a/t/t2203-add-intent.sh b/t/t2203-add-intent.sh
> index 192ad14b5f..44c1936e4d 100755
> --- a/t/t2203-add-intent.sh
> +++ b/t/t2203-add-intent.sh
> @@ -16,7 +16,8 @@ test_expect_success 'intent to add' '
> '
>
> test_expect_success 'git status' '
> - git status --porcelain | grep -v actual >actual &&
> + git status --porcelain >actual.raw &&
> + grep -v actual actual.raw >actual &&
> cat >expect <<-\EOF &&
> DA 1.t
> A elif
> @@ -26,7 +27,8 @@ test_expect_success 'git status' '
> '
>
> test_expect_success 'git status with porcelain v2' '
> - git status --porcelain=v2 | grep -v "^?" >actual &&
> + git status --porcelain=v2 >actual.raw &&
> + grep -v "^?" actual.raw >actual &&
> nam1=$(echo 1 | git hash-object --stdin) &&
> nam2=$(git hash-object elif) &&
> cat >expect <<-EOF &&
> @@ -171,17 +173,20 @@ test_expect_success 'rename detection finds the right names' '
> mv first third &&
> git add -N third &&
>
> - git status | grep -v "^?" >actual.1 &&
> + git status >actual.raw.1 &&
> + grep -v "^?" actual.raw.1 >actual.1 &&
> test_grep "renamed: *first -> third" actual.1 &&
>
> - git status --porcelain | grep -v "^?" >actual.2 &&
> + git status --porcelain >actual.raw.2 &&
> + grep -v "^?" actual.raw.2 >actual.2 &&
> cat >expected.2 <<-\EOF &&
> R first -> third
> EOF
> test_cmp expected.2 actual.2 &&
>
> hash=$(git hash-object third) &&
> - git status --porcelain=v2 | grep -v "^?" >actual.3 &&
> + git status --porcelain=v2 >actual.raw.3 &&
> + grep -v "^?" actual.raw.3 >actual.3 &&
> cat >expected.3 <<-EOF &&
> 2 .R N... 100644 100644 100644 $hash $hash R100 third first
> EOF
> @@ -211,11 +216,13 @@ test_expect_success 'double rename detection in status' '
> mv second third &&
> git add -N third &&
>
> - git status | grep -v "^?" >actual.1 &&
> + git status >actual.raw.1 &&
> + grep -v "^?" actual.raw.1 >actual.1 &&
> test_grep "renamed: *first -> second" actual.1 &&
> test_grep "renamed: *second -> third" actual.1 &&
>
> - git status --porcelain | grep -v "^?" >actual.2 &&
> + git status --porcelain >actual.raw.2 &&
> + grep -v "^?" actual.raw.2 >actual.2 &&
> cat >expected.2 <<-\EOF &&
> R first -> second
> R second -> third
> @@ -223,7 +230,8 @@ test_expect_success 'double rename detection in status' '
> test_cmp expected.2 actual.2 &&
>
> hash=$(git hash-object third) &&
> - git status --porcelain=v2 | grep -v "^?" >actual.3 &&
> + git status --porcelain=v2 >actual.raw.3 &&
> + grep -v "^?" actual.raw.3 >actual.3 &&
> cat >expected.3 <<-EOF &&
> 2 R. N... 100644 100644 100644 $hash $hash R100 second first
> 2 .R N... 100644 100644 100644 $hash $hash R100 third second
next prev parent reply other threads:[~2026-03-17 19:01 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20260317185048.74421-1-jerrywang183.ref@yahoo.com>
2026-03-17 18:50 ` [GSoC PATCH] t2203: avoid suppressing git status exit code Jialong Wang
2026-03-17 19:01 ` Junio C Hamano [this message]
[not found] <20260317185414.65952-1-jerrywang183@yahoo.com>
[not found] ` <xmqqmse3fsvw.fsf@gitster.g>
2026-03-17 19:25 ` Jialong Wang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqq7bral1q9.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=jerrywang183@yahoo.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.