Windows Explorer icons in TortoiseSVN take a long time to refresh to correct state
WindowsTortoisesvnWindows Problem Overview
After I commit files, the icons stay on either modified or waiting for commit for a long time. Is there any way to force a refresh to ensure that the icon that I am seeing is the correct state of the file?
Windows Solutions
Solution 1 - Windows
As stated in the FAQ: try running a cleanup.
Solution 2 - Windows
You can try this:
TortoiseSVN -> Settings -> Icon Overlay, set Status Cache to 'Shell' instead of 'Default'
Ref. to the Help.
> Shell Caching is done directly inside the shell extension DLL file, but only for the currently visible folder. Each time you navigate to another folder, the status information is fetched again.
>Advantage: needs only very little memory (around 1 MB of RAM) and can show the status in real time.
>Disadvantage: Since only one folder is cached, the overlays don't show the status recursively. For big working copies, it can take more time to show a folder in explorer than with the default cache. Also the mime-type
column is not available.
Solution 3 - Windows
I posted a similar answer here but to save you the trouble of opening the link I will quote it here:
> I'm not sure if this is exactly > related to your issue but I have found > TortoiseSVN can sometimes be quite > slow when dealing with repositories > that have a lot of files in them. This > manifests itself in the tsvncache.exe > process taking up a lot of memory. The > tsvncache.exe process scans files and > folders and associates the familiar > icons with them to denote > changed/ignored etc. files. > > A fix for this is to tell Tortoise SVN > to only cache the folders you are > working in and ignore the others. To > do this, right-click your project > folder and select > TortoiseSVN->Settings->Icon Overlays. > I have Exclude paths set to c:* and > d:* (basically ignore all fixed > drives) and Include paths set to my > projects folder.
Solution 4 - Windows
Stumbled upon this issue recently. Found a short and dirty workaround that has proven to be 100% effective.
Create an empty text file in the folder you wish for the icons to refresh in by right clicking and selecting "New" --> "Text Document". The icons should magically refresh. Delete the empty text file after of course.
Solution 5 - Windows
Closing the Windows Explorer window and reopening helps. Most often the icon stays at the tree part of Windows Explorer.
And no - Clean Up and F5 doesn't help. I guess it has something to do with Explorer and not TortoiseSVN.
Solution 6 - Windows
If you want to check if you comitted everything, there is the "svn check for modifications" menu option. If you press F5 there it will update and show you the truth. If it annoys you that the folder icons are out of date, you can turn the icons off.
Solution 7 - Windows
I don't know if it's related but hitting F5
seems to help... sometimes.
My experience with TortoiseSVN is that the performance is somehow directly linked to the number of checked out directories. You can set the directories that must be included/excluded in some TortoiseSVN properties to speed up the process.
Solution 8 - Windows
Go to the directory under which you want the icons to be updated. Right click on that directory with your mouse and in the SVN context explorer menu select 'cleanup' and then press F5. It should refresh all SVN icons under that directory for you. It did for me.
I work on a huge project with thousands of files and a SVN 'cleanup' is very fast on my computer so I do it at the root level for the most part, thus refreshing all icons. For slower computers without much memory a full cleanup for a big project might take a while. In that case you can refresh just the directory you need.
Someone says above that a 'cleanup' will revert your local changes but that is not necessarily true. It does not revert for me... Furthermore, I do not think it's an option you should enable. Sometimes your local SVN caches get corrupted and a cleanup will fix them for you... that being often a necessity in order to do your commits, etc...
Hope it helps.
PS. My tortoise SVN version is: TortoiseSVN 1.6.16, Build 21511 - 64 Bit
Solution 9 - Windows
Windows' "refresh" (F5) mostly works for me (OK, I press it obsessively, too), but sometimes a window doesn't have any icon overlays at all. In these cases, "Cleanup" doesn't help either, no matter which options I choose, including "Refresh Shell Overlays".
I followed the tip from gekowa:
TortoiseSVN -> Settings -> Icon Overlay, set Status Cache to 'Shell' instead of 'Default'
and the next time I opened the window, the overlays were correct. It took a few seconds for the window to open, but everything was right after that. The I set the Status Cache back to "Shell" and the time lag went away, too.
Previously, I had set the Status Cache to "None", but that didn't help.
Solution 10 - Windows
I had a similar problem. I'v created a new branch and afterwards checked out to a new working copy. The new working copy didn't have the icon overlays as it should. Nothing showed up. Only after killing the TSVNCache.exe
process via the Windows task manager, did the icons appear correctly.
Solution 11 - Windows
F5 did not work for me either, but I found one F5 method that worked.
Say you have a folder called projects and in there is a folder called mysubversionedproject. If you expand the explorer tree, you will see
- projects
- mysubversionedproject
If you now press F5 it might not work, as many have noticed.
But, if you close this tree so that you only see
- projects
(and made sure that you also clicked on projects so that it is actually selected)
and press F5 and then expand the tree again, then it might work.
For me, mysubversionedproject now has the overlayed icon, as it should.
Solution 12 - Windows
> A fix for this is to tell Tortoise SVN to only cache the folders you > are working in and ignore the others. To do this, right-click your > project folder and select TortoiseSVN->Settings->Icon Overlays. I have > Exclude paths set to c:* and d:* (basically ignore all fixed drives) > and Include paths set to my projects folder.
I did essentially the same thing as Malice did, but I unchecked the fixed drives and added C:\Users\YOURNAMEHERE\Documents* to the include directory. Works very well for me as all my projects are under this folder.
Solution 13 - Windows
Building upon noodle7's answer: another option is to change:
TortoiseSVN -> Settings -> Icon Overlay, set Status Cache to 'Default' instead of 'Shell'
This worked for me. TortoiseSVN 1.9.
Solution 14 - Windows
So... of all these answers/tricks/solutions, honestly all you have to do is switch to another pre-existing branch using the dropdown - right click > Git Branch, then switch back to the branch you were working on in order to see the status icons updated. Voila!
Solution 15 - Windows
When it gets annoying, I just rename the root folder, then name it back as it was originally.