git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2] t/pack-refs-tests: use test_path_is_missing

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 14, 2026, 05:00 UTC
Message-ID
<xmqqfr63xax9.fsf@gitster.g>
In-Reply-To
<20260314034617.1261-1-riteshjd75@gmail.com>
Ritesh Singh Jadoun <riteshjd75@gmail.com> writes:
Show 8 quoted lines
> The pack-refs tests currently use raw 'test -f' checks with negation.
> Update them to use Git's standard helper function test_path_is_missing
> for clearer failure reporting.
>
> Signed-off-by: Ritesh Singh Jadoun <riteshjd75@gmail.com>
> ---
>  t/pack-refs-tests.sh | 14 +++++++-------
>  1 file changed, 7 insertions(+), 7 deletions(-)
Show 11 quoted lines
> diff --git a/t/pack-refs-tests.sh b/t/pack-refs-tests.sh
> index dca0c77ca1..3cc4906f05 100644
> --- a/t/pack-refs-tests.sh
> +++ b/t/pack-refs-tests.sh
> @@ -61,7 +61,7 @@ test_expect_success 'see if a branch still exists after git ${pack_refs} --prune
>  test_expect_success 'see if git ${pack_refs} --prune remove ref files' '
>  	git branch f &&
>  	git ${pack_refs} --all --prune &&
> -	! test_path_is_file .git/refs/heads/f
> +	test_path_is_missing .git/refs/heads/f
>  '
This test in my tree looks like this:
        test_expect_success 'see if git ${pack_refs} --prune remove ref files' '
                git branch f &&
                git ${pack_refs} --all --prune &&
                ! test -f .git/refs/heads/f
        '

No patch that turns this instance of "! test -f" into an incorrect use of test_path_is_file helper, i.e., "! test_path_is_file", has ever been accepted to my tree. Which means that this [v2] will not apply to my tree.

I suspect that you have two patches on top of my tree, one is a botched attempt that turns "! test -f" into "! test_path_is_file", and the other one is an "oops, the previous one was a bad change, so fix it on top with another commit" that further changes it to "test_path_is_missing", and we are looking only at the latter patch.

We however do not work that way around here. Until a patch is accepted and merged to the 'next' branch, updates are expected to come as wholesale replacements. See Documentation/SubmittingPatches.

Even though no developer is perfect, when you are presenting your updated work, armed with wisdom borrowed from your reviewers' comments on your earlier attempts, you are expected to take the opportunity to pretend to have written a series of patches that are perfect logical progression towards the final shape of the code without detours, change of plans, and fixing earlier mistakes made in the series.

The final series accepted by the project will have to stay in our history for later developers to see in "git log" output to learn from, and a series being clean logical progression is a must for that to happen.

In this case, if what you have is indeed a pair of patches "one went into a wrong direction, the next corrects the course", then you would want to squash them into a single patch that turns "! test -f .git/refs/heads/f" that is in my tree into an improved form that is "test_path_is_missing". And send that as the second attempt (v2).

See also
    https://lore.kernel.org/git/xmqq34283b12.fsf@gitster.g/
Thanks.
Previous: Ritesh Singh Jadoun
Message 2 of 2 in “t/pack-refs-tests: use test_path_is_missing”
  1. t/pack-refs-tests: use test_path_is_missingRitesh Singh Jadoun, Mar 14, 2026
  2. Junio C HamanoMar 14, 2026

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.