All of lore.kernel.org
 help / color / mirror / Atom feed
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

  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.