tests: fix negated test_i18ngrep calls

The helper function test_i18ngrep pretends that it found the expected
results when it is running under GETTEXT_POISON. For this reason, it must
not be used negated like so

   ! test_i18ngrep foo bar

because the test case would fail under GETTEXT_POISON. The function offers
a special syntax to test that a pattern is *not* found:

   test_i18ngrep ! foo bar

Convert incorrect uses to this syntax.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Git 2.1

Signed-off-by: Junio C Hamano <gitster@pobox.com>
receive-pack: respect receive.advertiseAlternates config

Usually receive-pack advertises ref tips from alternates
repositories so that clients can sometimes avoid sending
objects that are already upstream.

However, if you have a very large alternates network, then
the number of ".have" refs can get cumbersome, and you spend
more time advertising refs that the client doesn't care
about than you are saving in the optimization.

This patch adds a config variable to drop .have lines
entirely.

An alternative approach would be to restrict the .have lines
to a smaller portion of the namespace that is known to be
"interesting" to most clients. This patch is much simpler;
if the loss of the .have optimization turns out to be too
much, we can try something more complex.