Please note that this post was migrated to my new blog platform. There may be bad formating, broken links, images, downloads and so on. If you need an item on this page, please contact me and I will do my best to get it from my backups.
In the forth and final part of my series, Living with Subversion, I cover a number of performance tips and some Dos and Don’ts.
Improving performance of TortoiseSVN
The performance improvement aspect of this article targets those mainly on laptops that want to save battery life and/or slower HDD machines, or simply have just too many projects (>50) within repositories. It is quite simple really, TortoiseSVN’s folder icon overlays are very cool as a quick visual indication of what has changed recently. The problem with the icon overlays is TortoiseSVN constantly updates the status of these, especially if you are using Windows Explorer to view the folder tree no matter if you are playing a game, surfing the web, etc.
Still not on par with what I am explaining? Check out TortoiseSVN’s Optimize Performance page. But they have left out one key improvement: Disable the Status Cache (icon overlays).
Icon Overlays Dialog
I set mine Status Cache overlays to “none”. This effectively disables the Status Cache all together. Just like SGV Client, you’ll have to perform an Update before starting your work everyday as this will pull down the latest copy to start with. If you like the red X effect, you’ll want to leave this on Default. I personally don’t want my HDD going in insane (like it did with the dozen+ repositories and icon overlays). So I disable mine, period.
Also be sure to uncheck “Show overlays only in explorer”. This will keep the icons out of the standard Windows dialog popups, and only show them in the Windows Explorer. Again if you want to see when something is out-of-sync immediately, you’ll want to skip this part but sacrifice performance.
Our final performance increase greatly effects Windows’ users. Setting the include paths text box. As described in the Optimize Performance page by TortoiseSVN, you will want to specify the directory of where your projects are stored. This keeps TortoiseSVN from snooping around your Windows directory for hidden svn folders - constantly snooping.
Common TortoiseSVN mistakes
As mentioned above, TortoiseSVN uses hidden directories to store the Subversion versioning information for that directory and files. So a mistake several of us have made is while working with an existing repository is we use Windows Explorer to copy an existing directory to a new directory (i.e. Theme copying). The problem with this logic is that the hidden svn directories are still there. This causes versioning whoas and most likely will force your updates into the previous version of that directory (or an Update will override your changes without a merge). This is because TortoiseSVN is using the path information stored within the hidden svn folders.
Simple fix really but you have to use your head to remember: Always right-click the new directory after copying, click Search and search for the .svn or _svn directories and delete them. Then the next time you go to check in, the directories will appear to be new to TortoiseSVN and allow you to add them.
An easier fix would be to just use the Rep-browser to perform the action(s), and do an Update when done on your local machine. This will copy/pull down everything properly.
Another common task is if you need to move a directory, as with SGV Client, you will have to move it within the Repo-browser or suffer similar issues noted above.
Bottom-line: use the Repo-browser for most of your copy and/or moving of folders.
And that concludes this four-part series. Lot of reading for just a few options, eh?