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

Re: On refreshing the index

From
Sergio Callegari <sergio.callegari@gmail.com>
Date
Mar 15, 2010, 00:19 UTC
Message-ID
<4B9D7CF5.5010404@gmail.com>
In-Reply-To
<7vmxyb3la7.fsf@alter.siamese.dyndns.org>
Junio C Hamano wrote:
Show 28 quoted lines
> Sergio Callegari <sergio.callegari@gmail.com> writes:
>
>   
>> If I run git status, git runs filters on a couple of opendocument files for
>> which a filter is defined
>>
>> GIT_TRACE=1 git status
>> trace: built-in: git 'status'
>> trace: run_command: 'rezip -p ODF_UNCOMPRESS2'
>> trace: exec: 'sh' '-c' 'rezip -p ODF_UNCOMPRESS2' 'rezip -p ODF_UNCOMPRESS2'
>> trace: run_command: 'rezip -p ODF_UNCOMPRESS2'
>> trace: exec: 'sh' '-c' 'rezip -p ODF_UNCOMPRESS2' 'rezip -p ODF_UNCOMPRESS2'
>> # On branch M05
>> # Untracked files:
>> #   (use "git add <file>..." to include in what will be committed)
>> #
>> #       WIP/
>> #       program.txt
>> #       program.txt~
>> nothing added to commit but untracked files present (use "git add" to track)
>>     
>
> What does "git diff-files" and/or "git diff-index HEAD" say at this point?
> If they do not say there are no difference, that means that the file on
> the filesystem and the blob registered in the index are different, even
> though after transmogrified with rezip (whatever it does) these two
> different blobs may look the same.
>   

Neither git diff-files" and/or "git diff-index HEAD say nothing at this point...

> I think the difference between "may look the same" and "identical" is what
> you are seeing.  Try "git add" on those paths and see what happens.
>   

Is there any way I can find out which file is the guilty one since git diff-files says nothing? E.g. a trace telling me on what is the filter being called?

BTW... some notes that may be useful...
1) rezip is a mere recompressor.  It takes a zip file and re-creates it 
at zero compression, so that the git delta logic can do a good job on it 
on repacking.  I've found this useful on zip files, openoffice files, 
jar files, etc.
2) if I clone outside git, git update-index --refresh is always ok at 
making git status fast (i.e. not running expensive filters).
3) The problem always happens when I switch branches, right after the 
switch.
Sergio
Previous: Junio C Hamano
Message 3 of 3 in “On refreshing the index”
  1. Sergio CallegariMar 11, 2010
  2. Junio C HamanoMar 13, 2010
  3. Sergio CallegariMar 15, 2010

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.