On Wed, Nov 20, 2013 at 10:33:28AM -0800, Junio C Hamano wrote: > Jeff King <peff@xxxxxxxx> writes: > > > Am I misremembering the issues with one-shot variables and functions? > > I think there are two problems involved. OK, I was misremembering. I recalled the "does not unset afterwards" part, but not the "does not export" part. I think because: > test_must_fail () { > ( > env | sed -n -e '/EDITOR/s/^/>> /p' > ) > } ...here we _do_ have GIT_EDITOR set properly in the function itself, but not in the subprocess. Previous discussion and links to POSIX are here: http://article.gmane.org/gmane.comp.version-control.git/137095 Not that they matter compared to the code you demonstrated, but I was digging them up when you responded. :) > Another is that EDITOR="$FAKE_EDITOR" that is set up earlier in the > is having trouble launching (I have a feeling that it never was > actually used because everybody uses "commit -F <file>"). I think it is used, as there are several "git commit --amend -v" invocations. Which makes sense, as you should not be able to test "-v" with "-F", I would think. I'm not sure why the old $FAKE_EDITOR doesn't work there, though (not that it would make the test pass anyway, as it does something different than what the test wants, but I would not expect the shell to complain of failure). -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html