Overlay icons

TortoiseSVN uses up to seven overlay slots for the status:

icon overlay for normal status
A fresh checked out working copy has a green checkmark as overlay. That means the Subversion status is Normal.
icon overlay for modified status
As soon as you start editing a file, the status changes to Modified and the icon overlay then changes to a red exclamation mark. That way you can easily see which files were changed since you last updated your working copy and need to be committed.
icon overlay for conflicted status
If during an update a conflict occurs then the icon changes to a yellow exclamation mark.
icon overlay for readonly status
If you have set the svn:needs-lock property on a file, Subversion makes that file ReadOnly until you get a lock on that file. Read-only files have this overlay to indicate that you have to get a lock first before you can edit that file.
icon overlay for locked status
If you hold a lock on a file, and the Subversion status is normal, this icon overlay reminds you that you should release the lock if you are not using it to allow others to commit their changes to the file.
icon overlay for deleted status
This icon shows you that some files or folders inside the current folder have been scheduled to be deleted from version control or a file under version control is missing in a folder.
icon overlay for added status
The plus sign tells you that a file or folder has been scheduled to be added to version control.

Unlike TortoiseCVS (the CVS shell integration) no overlay icon for unversioned files is shown. We do this because the number of icon overlays are limited system wide and should be used economically.

In some situations the overlay icons may not appear. This can happen on older Windows version (before Win2K) or if other applications install overlay handlers as well, since overlay icons are a limited ressource in Windows.


Why don't the icon overlays appear?

  • You rebooted your PC of course?
    If you haven't please do so now. TortoiseSVN is a windows Explorer Shell extension and will be loaded together with Explorer.
  • Did you install TortoiseSVN as a different user under WinNT/Win2K/WinXP than you are using now?
  • Go to the settings of TSVN and activate the icon overlays for at least the fixed drives. The installer does this automatically for the current user (can't do it for other users...) but since you are using TSVN as a different user than you installed it you need to set this manually.
  • Did you install TortoiseSVN on an older Windows (Win95/98/SE WinNT)?
    Then follow these instructions: Icons do not appear in older Windows versions
  • If some of the overlay icons do not show up, look here: The overlay icons appear, but not all of them!

The overlay icons appear, but not all of them!

You may find that not all of these icons are used on your system. This is because the number of overlays allowed by Windows is limited to 15. Windows uses 4 of those, and the remaining 11 can be used by other applications. If you are also using TortoiseCVS, then there are not enough overlay slots available, so TortoiseSVN tries to be a "Good Citizen (TM)"? and limits its use of overlays to give other apps a chance.

  • Normal, Modified and Conflicted are always loaded and visible.
  • Deleted is loaded if possible, but falls back to Modified if there are not enough slots.
  • ReadOnly is loaded if possible, but falls back to Normal if there are not enough slots.
  • Locked is only loaded if there are less than 13 overlays already loaded. It falls back to Normal if there are not enough slots.
  • Added is only loaded if there are less than 14 overlays already loaded. It falls back to Modified if there are not enough slots.

If you like to see all of the TortoiseSVN icons, you have to manually remove one of the other icon overlay handlers. This can be done by editing the registry. Use at your own risk!
You can to delete one of TortoiseCVSes entries at: HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\ShellIconOverlayIdentifiers


The icons are only visible on local drives

Go to the Settings -> Look and Feel -> Icon Overlays and check the drive types for which you want to see overlay icons. Be aware that enabling overlays for network drives will slow down not only TortoiseSVN but the whole system.


Extra green Checkmarks on non versioned files

After upgrading the client from Subversion/TortoiseSVN 1.3.x to 1.4.x some unversioned files display green checkmarks instead of no overlay icon at all.

It looks like something is left behind during the upgrade which confuses the TortoiseSVN status cache.

The standard procedure to resolve this problem is to close all explorer windows that display the working copy in question and to kill the TSVNCache process. When the explorer window is opened again, the TortoiseSVN status cache wil rebuild its internal data structures.


Icon overlay on SUBST drives

If your working copy is on a SUBST drive the icons might be mixed up.

The problem arises because the cache tries to fetch the status for two "different" locations at the same time, but those locations are actually the same so there are two status fetchings for the same working copy at the same time.

There is an easy way to solve this:
just exclude the original path from showing overlays (settings->icon overlays->exclude paths).

For example, if you have mapped \\station\folder\wc to g:
then put "\\station\folder\wc*" as the exclude pattern.

(Solution first found by Stefan)


Icons do not appear in older Windows versions

NOTE: This FAQ entry applies to TSVN 1.1.7 and earlier. From V1.2.0 these older operating systems are no longer supported.

If you are using Windows 95 the icon overlays won't appear. You can try the instructions for Windows NT4 below if you like, but it may still not work. Please note: We don't support Windows 95 at all - so there may be other issues if you're using that OS

If you are using Windows NT4, you need to install the IE4 shell or desktop extensions to get a more recent version of Explorer. To do this install IE4, and choose Yes to install the active desktop. Don't worry, you can turn off the actual active desktop later by right clicking on it. It's the new version of Explorer that we are after.

If you've already installed IE5, you must either:

  1. Uninstall IE5 and then install IE4 with desktop extensions, and then install IE5 again. What a palaver.
  2. Run IE5 setup with command line switches to install the IE4 desktop (shell) extensions. The command must be run from the folder that contains the ie5setup.exe file. If the browser appears unstable afterwards just run the IE5 repair function.
    For Win95: ie5setup.exe /c:"ie5wzd /e:IE4Shell WIN /I:Y"
    For WinNT: ie5setup.exe /c:"ie5wzd /e:IE4Shell NTx86 /I:Y"

For IE6: Run IE6 setup with command line switches to install the IE4 desktop (shell) extensions. The same caveats apply as for IE5. The command must be run from the folder that contains the ie6setup.exe file.
For WinNT: ie6setup.exe /c:"ie6wzd /e:IE4Shell NTx86 /I:Y"

The shortcut labelled Win NT Explorer on your start menu probably points to C:\\WINNT\\explorer.scf and doesn't get the overlays. Create a new shortcut to %windir%\\Explorer.exe /n, /e and it may get the overlays.

If you're using an IntelliPoint mouse driver, and launching Explorer via a mouse click, you need to upgrade from version 3 to version 3.2 or higher of IntelliPoint. Strangely, launching Explorer from the Start menu gives icons in this case, but not when launched from the mouse.


Optimize performance

If you're working with big projects, you might encounter some performance problems when using TortoiseSVN. Here are some tips to optimize the settings:

  • Don't put your working copies on a network share but keep them on your local harddrive.
    There are several problems with working copies on network shares. First, a network share is much slower than your local harddrive. Which means whenever TortoiseSVN has to fetch the status of your working copy (e.g. for a commit, update, or simply to show the overlay icons) it will take a lot longer and use a lot of bandwidth.
    If you can't put the working copy on your local harddrive, at least disable the overlay icons for network shares.
  • Reduce the size of your working copies
    If you have any branches of your projects checked out which you don't really need anymore, consider removing them. Because even if you don't work with them, the status cache still has to monitor them for changes and must crawl them to show the overlays.
  • Tell TortoiseSVN where your working copies are
    In the settings dialog, Icon Overlays page, you can specify which paths TortoiseSVN should monitor for working copies. If you don't specify them there, then TortoiseSVN must monitor all your mounted drives completely, which can slow down your system too.
    An example: if you have your working copies located in C:\projects, put the path "C:\projects\*" in the "Include paths:" box, and "C:\*" in the exlude box. That will exclude the whole drive C:\, but include all subdirs of C:\projects.
  • Show overlays only in explorer
    Many programs use the "file open" or "file save" dialogs of the shell. Whenever they do that, the shell extension of TortoiseSVN is automatically loaded too, which isn't necessary if you don't really need the icon overlays in those dialogs.
    If you don't need the overlays or the context menu of TortoiseSVN in those application dialogs, you can check the box "Show overlays only in explorer" in the settings dialog, Icon Overlays page.

Overlays not working on Windows 2003 Terminal Server

Problem:
If several users are connected to a Windows 2003 Terminal Server, some of them do not see the overlay icons.

Solution:
As long as the users have certain rights on the server (i.e. the right to establish local pipe connections to apps running in another user context) it will work. If the users don't have those rights, then only the first user will see the overlays, all others won't. That's because there's only one single instance of the TSVNCache process which all users access - if they don't have the right to access it then they don't have the overlays.

Or:
Open ToroiseSVN settings, navigate to "Look and Feel -> Icon Overlays", and under "Status Cache" select "Shell".


The overlays show the wrong status

Sometimes you find that the overlays don't reflect the real status of files and/or folders. Usually, hitting the F5 key is enough to make the overlays appear correctly (you might have to wait a few seconds until the cache has fetched the status again).

The treeview on the left side of the explorer is a whole other story. It won't update the overlays, no matter how many times you hit the F5 key. That's a problem with the explorer and outside of TortoiseSVN's reach.

A short explanation:
The treeview always shows the whole explorer tree, including network drives and other namespace extensions. Since these can be very slow (e.g. slow network drives), the explorer tree doesn't ask the overlay extensions for updated overlays all the time. Even if you tell the explorer that a folder has changed and it should update the overlays accordingly, it doesn't do so. It first checks itself if the folder really has changed and only updates the overlays if it thinks the folder really has changed.
Now, since the Subversion status of a folder has nothing to do with the folder itself, the folder itself never really changes (only some file inside the .svn folder, but not the folder itself), explorer therefore doesn't update the overlays.

There are some tricks and workarounds to make the explorer refresh the overlays even on the left treeview, but those are tricks and workarounds, which obviously don't work all the time.

There's one trick that usually works, but it is slow and TortoiseSVN can't use that trick on-the-fly - it just would slow down the system too much. But you can trigger that trick manually by executing the 'cleanup' command on the root of your working copy. After the cleanup command has finished, you have to wait a few seconds for the treeview to update the overlay icons.


Why do the overlay icons sometimes change to random graphics?

The Windows icon cache is a fairly buggy creature. You can solve this in one of the following ways:

  • Install Microsoft's TweakUI and run the option to rebuild icons.
  • Or increase the icon cache size. Go to HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer and add a new String Value called Max Cached Icons. The default value is 500 - try increasing it to 2048 (see Q132668 in the Microsoft knowledge base for more details).
  • Or delete the file called ShellIconCache in your Windows directory. And reboot.
  • With TortoiseSVN 1.3.0 and later, you can also rebuild the icon cache by calling TortoiseProc from the command line like this TortoiseProc.exe /command:rebuildiconcache