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

Re: Should git-prune-script warn about dircache?

From
Junio C Hamano <junkio@cox.net>
Date
May 1, 2005, 20:41 UTC
Message-ID
<7vwtqismpn.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<7vll6yyiax.fsf@assigned-by-dhcp.cox.net>
>>>>> "JCH" == Junio C Hamano <junkio@cox.net> writes:
>>>>> "LT" == Linus Torvalds <torvalds@osdl.org> writes:

LT> How about making git-prune-script first run "git-update-cache --refresh", LT> and checking the return value of it (this, of course, assumes that LT> git-update-cache --refresh would return non-zero if it can't refresh a LT> file, which is currently not true, but should be easily fixable).

JCH> Or just check if it sees anything in the output, especially JCH> "needs update" line.

Well, we were both wrong. The problem is not about the work tree changes since the last git-update-cache, but about the blobs recorded in the cache but still not committed.

I think we should do something like this.
    git-ls-files --cached | "sed to SHA1 only" | sort >,,1
    git-fsck-cache --unreachable | "sed to SHA1 only" | sort >,,2
    comm -13 ,,1 ,,2 | "sed to .git/object/ path" | xargs -r rm -f
Previous: Junio C HamanoNext: Junio C Hamano
Message 4 of 6 in “Should git-prune-script warn about dircache?”
  1. Junio C HamanoMay 1, 2005
  2. Linus TorvaldsMay 1, 2005
  3. Junio C HamanoMay 1, 2005
  4. Junio C HamanoMay 1, 2005
  5. Make git-prune-script a bit more careful.Junio C Hamano, May 1, 2005
  6. Make git-update-cache --refresh fail if update/merge needed.Junio C Hamano, May 1, 2005

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.