git blame performance
From: Jan Smets <hidden>
Date: 2016-06-15 23:07:12
Hi I have recently migrated a fairly large project from CVS to Git. One of the issues we're having is the blame/annotate performance. The repository contains +650k commits total, of which ~300k are on master. (raw size = ~8GB) Running blame on one of the oldest files takes over 30 seconds. This is on a fairly beefy (server) machine with lots of ram and the repository on a ramdisk. Running git 2.5.2 cvs annotate of the same file (over the network) is ready in 0.8 seconds. blame/annotate is a frequently used operation, ranging between 5 to 20 usages a day per developer. I have two questions 1) Is there a way to speed this up (in git)? eg: can it run multi threaded? build pre-cached blame views? 2) I was thinking to work around the issue and use gitweb blame_incremental and pre-populate the cache. If you can think of any other (short term) solutions I would really like to hear them. Thank you - Jan