Re: On refreshing the index

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Junio C Hamano wrote:
Sergio Callegari <sergio.callegari@xxxxxxxxx> 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
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]