Subject: Re: [PATCH 4/7] t5540-http-push: expect success when pushing without arguments

From: Clemens Buchacher <[email-masked]>
Date: Sun, 25 Oct 2009 17:16:31 +0100

On Sun, Oct 25, 2009 at 11:21:42PM +0800, Tay Ray Chuan wrote:

> But after c6aa27e (Move WebDAV HTTP push under remote-curl, Wed Oct
> 14), the dumb http mechanism additionally learns about the refs through
> /info/refs (via remote-curl.c::get_refs), so it is aware of packed
> refs, even though it still doesn't read /packed-refs (assuming /info/
> refs is up-to-date). Thus the push now succeeds.

If left as is, it should actually fail, and for two reasons.

1. push aborts immediately because info/refs is not updated by "git
update-ref" so that it thinks everything is up-to-date from the previous
test. The old http-push code did not check for up-to-date refs which is why
this problem did not trigger so far. This is fixed in "update http tests
according to remote-curl capabilities".

2. Even if info/refs is updated, a bug in the new remote-helper causes push
to exit with error status 128. This is fixed in "remote-helpers: return
successfully if everything up-to-date".

This is unrelated to the original intention of the test, but I think it
doesn't hurt to keep it around, at least for the time being.

It's unfortunate that we both worked on t5540 at the same time. But except
for this point I think our changes are compatible.

Clemens