Re: Some information that git diff saves and that git status does not
From: Dmitry Potapov <hidden>
Date: 2016-06-15 22:48:24
On Tue, Mar 09, 2010 at 07:58:11AM +0100, Sergio Callegari wrote:
I actually did not know about the update-index --refresh
This is a plumbing commmand, which normally users should not use directly, but when you copy your repo by hands or do something like that, you may need it (or use "git diff").
but now I have the relevant information its name sounds obvious. And I suspected something like inode data entering the game. As a matter of fact, I was obtaining the same effect with git diff.
Because "git diff" refreshes the cached stat information internally, in the same way as "update-index --refresh". Junio wrote about this recently: http://article.gmane.org/gmane.comp.version-control.git/141708
What was appearing to me as a quirk is that: 1) If you do not refresh the index, git works perfectly all the same. For instance, git status shows the right info. Only it is not that fast anymore, since everytime it needs to runs the filters on all the files. 2) git status does not refresh the index, while other commands like git diff do.
Historically, "git status" was just the dry-run mode of "git commit". I do not think that "git commit" should refresh the index. But in Git 1.7, "git status" is no longer the dry-run mode of "git commit", so I see no reason why it does not refresh the cached stat info internally... Dmitry