git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Cloning from sites with 404 overridden

From
Junio C Hamano <junkio@cox.net>
Date
Mar 19, 2006, 19:37 UTC
Message-ID
<7vk6aqql9e.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<e5bfff550603190604ne4364f3o6a862d25267a2dce@mail.gmail.com>
"Marco Costalba" <mcostalba@gmail.com> writes:
Show 5 quoted lines
> http://digilander.libero.it /mcostalba/scm/qgit.git/objects/8d/ea03519e75f47d
>
> Git does not understand object is missing and thinks what site sends
> _is_ the requested
> object and then founds that is (of course) corrupted.

To be fair, the site is _not_ missing anything from HTTP protocol perspective, because when git asks 8d/ea0351... file, the server responds with a regular "HTTP/1.0 200 OK" response. So it is _your_ repository that is corrupt -- instead of correctly _lacking_ the file you should have removed with prune-packed, it has a garbage file.

Having said that, I agree that it would be nicer if we support such a site, in the same spirit that we already bend backwards to support really dumb hosted http servers that do not give directory index by using objects/info/packs and info/refs.

I think it wouldn't be too much a hassle to add logic to http-fetch.c (perhaps with an additional "--no-404" option or somesuch) to fall back on pack transfer upon seeing a corrupt loose object. We do the falling back when getting 404 error to a request for a loose object, so the new code would essentially do the same and you might be OK.

Previous: Marco CostalbaNext: Marco Costalba
Message 4 of 17 in “Cloning from sites with 404 overridden”
  1. Marco CostalbaMar 19, 2006
  2. Paolo CiarrocchiMar 19, 2006
  3. Marco CostalbaMar 19, 2006
  4. Junio C HamanoMar 19, 2006
  5. Marco CostalbaMar 19, 2006
  6. Junio C HamanoMar 19, 2006
  7. Marco CostalbaMar 20, 2006
  8. Junio C HamanoMar 20, 2006
  9. Marco CostalbaMar 20, 2006
  10. Lukas SandströmMar 20, 2006
  11. Petr BaudisMar 20, 2006
  12. Nick HengeveldMar 20, 2006
  13. Junio C HamanoMar 19, 2006
  14. Petr BaudisMar 19, 2006
  15. Petr BaudisMar 19, 2006
  16. Marco CostalbaMar 19, 2006
  17. Randal L. SchwartzMar 20, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.