On Thu, Oct 21, 2021 at 8:30 PM Junio C Hamano <gitster@xxxxxxxxx> wrote: > Eric Sunshine <sunshine@xxxxxxxxxxxxxx> writes: > >> + test_when_finished "git stash pop && git stash pop" && > > > > If it's indeed important to clean up the stashes when the test > > finishes, then the test_when_finished() invocation should probably be > > a bit more robust... > > > >> + git stash -- file_x && > >> + git stash && > > > > ... since, as it is now, if an error occurs between these two > > git-stash invocations or before them, then there will only be zero or > > one stashes, so the double stash-pop by test_when_finished() will > > itself errout out. Better, perhaps to do this: > > > > test_when_finished "git stash pop && git stash pop || :" && > > There is no "I do not care what is in the stash right now, just > clear all"? Indeed, I wondered that too but was too lazy to look and I had forgotten about `git stash clear`, which makes this much simpler: test_when_finished "git stash clear" &&