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

Re: [PATCH] t3420-rebase-autostash: don't try to grep non-existing files

From
Junio C Hamano <gitster@pobox.com>
Date
Jun 28, 2026, 01:45 UTC
Message-ID
<xmqqcxxb4eva.fsf@gitster.g>
In-Reply-To
<aj90x3DsER5HASUS@szeder.dev>
SZEDER Gábor <szeder.dev@gmail.com> writes:
Show 47 quoted lines
> On Sun, Oct 10, 2021 at 07:28:09PM +0200, SZEDER Gábor wrote:
>> Several tests in 't3420-rebase-autostash.sh' start various rebase
>> processes that are expected to fail because of merge conflicts.  The
>> tests [1] checking that 'git rebase --quit' and autostash work
>> together as expected after such a failure then run '! grep ...' to
>> ensure that the dirty contents of the file is gone.  However, due to
>> the test repo's history and the choice of upstream branch that file
>> shouldn't exist in the conflicted state at all, and thus it shouldn't
>> exist after the subsequent 'git rebase --quit' either.  Consequently,
>> this 'grep' doesn't fail as expected, i.e. because it can't find the
>> dirty content, but instead it fails, because it can't open the file.
>> 
>> Thighten this check by using 'test_path_is_missing' instead, thereby
>> avoiding unexpected errors from 'grep' as well.
>> 
>> Previously 2745817028 (t3420-rebase-autostash: don't try to grep
>> non-existing files, 2018-08-22) fixed a couple of similar issues; this
>> one was added later in 9b2df3e8d0 (rebase: save autostash entry into
>> stash reflog on --quit, 2020-04-28).
>> 
>> [1] This patch modifies only a single test, but that test is run
>>     several times with different strategies ('--apply', '--merge', and
>>     '--interactive'), hence the plural "tests".
>> 
>> Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
>> ---
>>  t/t3420-rebase-autostash.sh | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>> 
>> diff --git a/t/t3420-rebase-autostash.sh b/t/t3420-rebase-autostash.sh
>> index 43fcb68f27..bbe82d2c0c 100755
>> --- a/t/t3420-rebase-autostash.sh
>> +++ b/t/t3420-rebase-autostash.sh
>> @@ -200,7 +200,7 @@ testrebase () {
>>  		git rebase --quit &&
>>  		test_when_finished git stash drop &&
>>  		test_path_is_missing $dotest/autostash &&
>> -		! grep dirty file3 &&
>> +		test_path_is_missing file3 &&
>>  		git stash show -p >actual &&
>>  		test_cmp expect actual &&
>>  		git reset --hard &&
>> -- 
>> 2.33.0.1279.g1a260bf8c2
>
> It appears that this patch might have fallen quite deep through the
> cracks... ;)

Yeah, that indeed seems to be the case. It is surprising that nobody even had any comment on it back then.

> But the issue this patch is addressing is still there, and the patch
> still applies cleanly after almost 5 years.
Will take a look and queue.  Thanks.
Previous: Todd Zullinger
Message 5 of 5 in “t3420-rebase-autostash: don't try to grep non-existing files”
  1. t3420-rebase-autostash: don't try to grep non-existing filesSZEDER Gábor, Oct 10, 2021
  2. SZEDER GáborJun 27, 2026
  3. Phillip WoodJun 27, 2026
  4. Todd ZullingerJun 27, 2026
  5. Junio C HamanoJun 28, 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.