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

Re: Git clone error

From
Linus Torvalds <torvalds@linux-foundation.org>
Date
Aug 1, 2007, 16:36 UTC
Message-ID
<alpine.LFD.0.999.0708010929070.3582@woody.linux-foundation.org>
In-Reply-To
<alpine.LFD.0.999.0708010846360.3582@woody.linux-foundation.org>
On Wed, 1 Aug 2007, Linus Torvalds wrote:
Show 7 quoted lines
> 
> > If I just recreate a version I'm happy with, can I add that to the repo and
> > go from there?
> 
> Well, it's not so much a version _you_ are happy with: you'd have to be 
> able to re-create the exact old version (with the exact same SHA1), in 
> order for git to be happy.

Btw, if you really cannot re-generate it, you'd basically need to create a whole new git archive without that blob (or basically with that blob replaced by another version).

We don't have wonderfully good support for that, because, quite frankly, we've not had this happen before. I think every time before, people have had the blob in some other copy of their git archive.

But the thing to use is "git filter-branch", which can take a git history and munge it arbitrarily. It would be the "tree-filter" that you'd use to replace that one blob that you cannot regenerate with another (ie you might decide to just replace the original version of the file with that *second* version, and regenerate the tree that way).

I'm cc'ing Dscho explicitly to see if he can help you with the exact syntax, and maybe we could even make this into a user-manual entry about how to handle corruption. I don't think we have anything in the documentation about this - we only cover the trivial cases where the objects are all good, but you've lost the pointers into it because you removed a branch by mistake or something.

		Linus
Previous: Linus TorvaldsNext: Johannes Schindelin
Message 6 of 13 in “Git clone error”
  1. Denis BuenoJul 31, 2007
  2. Junio C HamanoAug 1, 2007
  3. Linus TorvaldsAug 1, 2007
  4. Denis BuenoAug 1, 2007
  5. Linus TorvaldsAug 1, 2007
  6. Linus TorvaldsAug 1, 2007
  7. Johannes SchindelinAug 1, 2007
  8. Denis BuenoAug 1, 2007
  9. Johannes SchindelinAug 1, 2007
  10. Denis BuenoAug 2, 2007
  11. Johannes SchindelinAug 2, 2007
  12. Linus TorvaldsAug 2, 2007
  13. Steffen ProhaskaAug 1, 2007

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.