> Am 27.06.2018 um 19:27 schrieb Elijah Newren: > > On Wed, Jun 27, 2018 at 9:54 AM, Junio C Hamano <gitster@xxxxxxxxx> wrote: > >> Having said that, it would be simpler for at least the latter to > >> write it using a single-shot environment assignment, perhaps? I.e. > >> > >> PATH=./test-bin:$PATH git rebase --continue && > >> > >> without running in a subshell? > > > > Seems reasonable. Since these tests were essentially copies of other > > tests within the same file, just for rebase -i instead of -m, should I > > also add another patch to the series fixing up the rebase -m testcase > > to also replace the subshell with a single-shot environment > > assignment? > > Pitfalls ahead! > > PATH=... git rebase ... > > is OK, but > > PATH=... test_must_fail git rebase ... > > is not; the latter requires the subshell, otherwise the modified PATH > variable survives the command because test_must_fail is a shell > function. Yes, it's silly, but that's how it is. We have the 'test_env' helper function for this case: test_env PATH=./test-bin:$PATH test_must_fail git rebase --opts