Subject: git-status and git-diff now very slow in project with a submodule

From: Andy Parkins <[email-masked]>
Date: Thu, 20 May 2010 11:01:02 +0100

Hello,

I've just upgraded from 1.6.something to 1.7.1.  All very nice.

The new submodule reporting is nice too; but I'd like to be able to turn it 
off :-)

The problem is that I have a (relatively) small project as the supermodule, 
and a linux kernel clone as a submodule and an ffmpeg clone as a submodule.  
Now I used to be able to do git-status or git-diff and it would be instant, 
it now takes a number of seconds to report.  I guess (but don't know), that 
it is the detection of "dirty" status in the submodule's that is slowing 
down the supermodule processing.

I wouldn't like to see the feature go, because in almost all circumstances 
it is exactly right; however, I'd like to be able to turn off dirty 
detection in submodules.  Is this already possible, and I've just missed the 
configuration option?

One additional small point: why do untracked files in a submodule make the 
module dirty?  I've often got a few "temp.ps" or "debug.log" or 
"backtrace.log" files lying around -- inappropriate to add to an ignore 
file, but they don't make my working directory dirty.  "Dirty" in a working 
directory means uncommitted changes to tracked files, why does it mean 
something different in a submodule?

Andy
-- 
Dr Andy Parkins
[email-masked]