Re: Issue 323 in msysgit: Can't clone over http
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Sep 11, 2009, 08:54 UTC
- Message-ID
- <7veiqdzwrk.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <20090909203350.e3d7e5dc.rctay89@gmail.com>
Tay Ray Chuan <rctay89@gmail.com> writes:
>> I am in favour or removing this check, not just due to its >> unreliability, but for the sake of consistency (we very rarely send a >> HEAD request to poll data before doing a GET).
I think this is sensible. The only case I think it could be a problem is this scenario:
- You clone from remote.
- Remote works more and has two more packs, A and B.
- You fetch, but this does not need both of them (perhaps you fetched only one branch). You get *.idx files for both, but *.pack file only for A.
- Remote works a bit more and then repacks everything into a single pack C.
- You fetch, and the walker walks the loose objects, and then finds one object that cannot be obtained as a loose object. It tries to look up in the *.idx file and finds it in B.
But the packfile B is long gone.
I didn't follow the codepath that uses http_get_info_packs() and then uses repo->packs list to see what it does, but as long as the above does not happen we should be Ok.
Thanks.