From: Junio C Hamano Date: Fri, 11 Sep 2009 08:54:55 GMT Subject: Re: Issue 323 in msysgit: Can't clone over http Message-ID: <7veiqdzwrk.fsf@alter.siamese.dyndns.org> In-Reply-To: <20090909203350.e3d7e5dc.rctay89@gmail.com> Tay Ray Chuan 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.