Why's it bad to store source code on Git?
The fix for this is pretty simple: use filesystem watch hooks like inotify to update an lstat cache. I wrote something like this for an internal project and the speed difference was night and day. I remember reading that there had been progress on the inotify front on the git dev mailing list a few years ago, don't know what the current status is.
http://git.661346.n2.nabble.com/inotify-to-minimize-stat-cal...
From my experience, we can bet git is the one that takes the least amount of time
Not hitting the network to check which files changed, for a start