Re: git stash: status from current dir not top dir?
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Mar 17, 2011, 19:30 UTC
- Message-ID
- <7vsjul35p3.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <4D824F46.70107@gmail.com>
Piotr Krukowiecki <piotr.krukowiecki@gmail.com> writes:
> Now I don't know how should I handle this: > > 1. unset it just before "git stash apply" in my test > A safe, local change
This is the preferred method; in addition to "a safe local", more importantly, at that point you are testing what you _want_ to be testing, namely, how the output appears to the _real_ end users who do not use verbose message. So for that purpose, mucking locally with MERGE_VERBOSITY is perfectly acceptable.
You would not just "unset it just before", but "unset around it" in a subshell like this:
git stash &&
(
sane_unset GIT_MERGE_VERBOSITY &&
git stash apply
) >../actual &&
git status >../expect &&
test_cmp ../expect ../actualso that if somebody adds new tests later in the script, they are not affected by this change.
Write your test_cmp always to compare expected with actual, not the other way around, so that the diff output you see when the test is run under -v option shows the changes from what is expected.
Thanks.