August 12, 2004

Speeding Up Subversion

Everybody is switching from CVS to Subversion. Subversion is great, it has some excellent new features:

  • Commits are atomic
  • WebDAV access
  • Versioning of directories
  • File and directories moves and renames

But, unfortunately, it has some downsides too: local checkout produces way more files. On the example of Apache Cocoon, CVS checkout of the version 2.1.5-dev used to have 11695 files (or so ;-)), when SVN checkout of version 2.1.6-dev now produces 36241 files.

As a result, commands svn update, svn status require more disk operations, and take more time, than single cvs update (which plays roles of both svn commands). What can be done to speed up SVN? Currently, I can suggest two options:

  • Upgrade harddrive to the faster spinning one. Unfortunately, I'm already on 7200 RPM harddrive and there are no faster ones for the notebook
  • Disable update of the file's last access timestamp when using NTFS (NtfsDisableLastAccessUpdate registry setting). Also article does not mention it - don't forget to reboot.

Have a suggestion on how to speed up SVN? Let me know.

Posted by Vadim at August 12, 2004 10:56 AM

Don't forget disabling the creation of 8.3 names if you are on ntfs.

Posted by: Ron at August 12, 2004 2:50 PM

User a better filesystem like ReiserFS on Linux :-)

Posted by: Nadeem at August 12, 2004 3:59 PM