Re: [PATCH v2] replay: drop commits that become empty
- From
- Phillip Wood <phillip.wood123@gmail.com>
- Date
- Dec 17, 2025, 14:45 UTC
- Message-ID
- <d54c50ef-9d6c-498c-aca3-ed4461733190@gmail.com>
- In-Reply-To
- <xmqqpl8f719x.fsf@gitster.g>
On 15/12/2025 23:50, Junio C Hamano wrote:
Show 23 quoted lines
> Phillip Wood <phillip.wood123@gmail.com> writes: >> diff --git a/t/t3650-replay-basics.sh b/t/t3650-replay-basics.sh >> index cf3aacf3551..9d4b0dd1a77 100755 >> --- a/t/t3650-replay-basics.sh >> +++ b/t/t3650-replay-basics.sh >> @@ -25,6 +25,8 @@ test_expect_success 'setup' ' >> git switch -c topic3 && >> test_commit G && >> test_commit H && >> + git switch -c empty && >> + git commit --allow-empty --only -m empty && > > The use of "--only" here is a bit curious. As there is no change > between the index and the commit our "empty" branch points at, > wouldn't it be unnecessary? The option, together with --allow-empty, > would only matter if you did > > git switch -c empty && > modify blah && > git add blah && > git commit --allow-empty --only -m empty > > because without --only, the changes to blah will be taken.
I've got into the habit of always adding "--only" when I want to create an empty commit in case there are staged changes. I don't really like "--allow-empty" as I've never wanted to create commit that might or might not be empty - either I want to create an empty commit in which case I don't want to commit any staged changes, or I want the commit to fail if there are no staged changes). I can remove it if you want.
Thanks
Phillip