Re: [RFC] reset --hard: warn before discarding staged content with no commit history
- From
- Koutsouflakis Stefanos <koutsouflakis.stefanos@proton.me>
- Date
- Dec 14, 2025, 13:29 UTC
- Message-ID
- <Ai2bA2Zt8bsexgQEIKg1vK7-SNNhTlsmmFp_gOJp8IKX9dJME7UC97EtqRhAUfD00sFmqRdHg9xgGW82rikrLIDUIswrUPr3RKm-LQgGuNY=@proton.me>
- In-Reply-To
- <xmqqzf7ocrhk.fsf@gitster.g>
On Friday, December 12th, 2025 at 05:25, Junio C Hamano <gitster@pobox.com> wrote:
> I doubt that special casing an empty tree would fly well.
I might be missing something, could you say more about what makes this problematic? If it is about breaking existing workflows: any script that automates either of the two use-cases discussed would be relying on behavior that is almost certainly unintended. Such scripts would fail, but without data loss, and give authors a clear signal to fix a likely bug.
> And I do not have any better ideas. Other than just failing, that is. > But that leads to nonsense combination "--hard --force", just as > idiotic combination as "rm -f -i" :-/
There might be other ways to mitigate this, e.g.: a) Refuse with a fatal error and hint the user to remove staged content with "git rm --cached -r ." b) Autostash with a warning
Thanks, Stefanos