^_^

2008年4月10日星期四

TortoiseSVN惹得祸

这两天重新安装了office机器,OS加上各种工具、软件花费了超过一个工作日,但是最后还是发现整体机器偶尔停止响应,特别是explorer.exe进程。经过一番调查,才发现具体是TortoiseSVN惹得祸。

在发现explorer.exe进程停止响应的时候,我只要将TortoiseSVN(1.4.8.12137-win32-svn-1.4.6)中的一个进程TSVNCache.exe杀死,响应立刻就能恢复。

我到TortoiseSVN官方网站search了一下,早在2005年就有人反映过这个问题,现在bug又重现了,强!

我找到TortoiseSVN的帮助信息,发现其实只要将下图中“Status Cache”项选择“None”即可停止进程TSVNCache.exe的运更新,从而不再影响explorer.exe进程。当然代价就是不再显示文件/目录的状态,但是总比explorer.exe进程停止响应的好,再说这个bug会尽快fixed的,到时候重新设定回default即可。

The Settings Dialog, Look and Feel Page
This page allows you to choose the items for which TortoiseSVN will display icon overlays. Network drives can be very slow, so by default icons are not shown for working copies located on network shares. You can even disable all icon overlays, but where's the fun in that?
Since it takes quite a while to fetch the status of a working copy, TortoiseSVN uses a cache to store the status in so the explorer doesn't get hogged too much when showing the overlays. You can choose which type of cache TortoiseSVN should use according to your system and working copy size here:
Default
Caches all status information in a separate process (TSVNCache.exe). That process watches all drives for changes and fetches the status again if files inside a working copy get modified. The process runs with the least possible priority so other programs don't get hogged because of it. That also means that the status information is not realtime but it can take a few seconds for the overlays to change. Advantage: the overlays show the status recursively, i.e. if a file deep inside a working copy is modified, all folders up to the working copy root will also show the modified overlay. And since the process can send notifications to the shell, the overlays on the left treeview usually change too. Disadvantage: the process runs constantly, even if you're not working on your projects. It also uses around 10-50 MB of RAM depending on number and size of your working copies.
Shell
Caching is done directly inside the shell extension dll, 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 realtime. 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.
None
With this setting, the TortoiseSVN does not fetch the status at all in Explorer. Because of that, files don't get an overlay and folders only get a 'normal' overlay if they're versioned. No other overlays are shown, and no extra columns are available either. Advantage: uses absolutely no additional memory and does not slow down the Explorer at all while browsing. Disadvantage: Status information of files and folders is not shown in Explorer. To see if your working copies are modified, you have to use the "Check for modifications" dialog.
本站文章除注明外,均为本站原创
转载请注明文章转载自: 大笨熊乐园 [ https://blog.foolbear.com/ ]
文章标题: TortoiseSVN惹得祸
文章地址: https://blog.foolbear.com/2008/04/tortoisesvn.html

没有评论 :

发表评论

Related Posts with Thumbnails