解決TortoiseSVN客戶端引起電腦慢的問題(轉)


如果你覺得SVN的cache程序使得你的機器反應很慢的話,那可以參考這個方案.不過可能要改變你以前使用習慣.
這個方案有兩部分,第一部分是關閉SVN的cache監視;第二部分是顯示文件差異時,使用SVN的“check for modifications”顯示差異。 
1.關閉SVN的cache監視。即關閉tsvncache.exe這個程序對目錄的監視。
具體操作步驟如下:
a) 右擊任意目錄打開右鍵菜單,打開"tortoisesvn" => "settings"下的設置窗口
b) 找到"icon overlays"的設置項,將"status cache"設置成"none"
2.使用SVN的“check for modifications”顯示差異
具體操作步驟如下:
a) 右擊需要比較差異的目錄,打開右鍵菜單,打開"tortoisesvn" => "check for modifications",打開比較差異窗口
注:這樣顯示文件差異是因爲上面關閉監視後,再有修改程序文件,文件夾不再更新修改標識了,無法再通過查看文件平圖標來知道是否有文件修改。
 
 
今天本人這樣修改了,感覺機器強多了!不再有explorer疆死的情況了!爽!
 
 
 
功能解釋:
 
 
默認

把所有狀態信息緩存在一個獨立進程中(TSVNCache.exe)。該進程監視所有驅動器的更改,並在工作副本中的文件被修改時重新獲取其狀態。該進程以最低優先級運行,所以其他程序不會被它擠兌。這同樣意味着狀態信息並不是實時 的,因爲它需要幾秒鐘時間處理圖標覆蓋的變化。

優點: 圖標覆蓋遞歸地顯示狀態,就是說,如果一個處在工作副本深處的文件被修改了,所有途徑的文件夾包括工作副本的根目錄都會顯示出修改的圖標覆蓋。也因爲該進程可以向Windows外殼發送通知,資源管理器左面的樹形圖通常也會更改。

缺點: 即使你已經不在項目下工作了,該進程仍然持續運行。取決於你工作副本的數量和大小,它將佔用10-50 MB的RAM內存空間。

Windows 外殼

緩存在外殼擴展dll中直接完成,但僅僅是爲那些當前可見的文件夾。每次你瀏覽到其他文件夾,狀態信息就會被重新獲取。

優點: 僅僅需要很少的內存(大約1 MB),並且可以 實時 顯示狀態。

缺點: 因爲僅有一個文件夾被緩存,圖標覆蓋不會遞歸地顯示狀態。在大一些的工作副本下,它在瀏覽器中顯示一個文件夾將比默認緩存模式花費更多時間。而且 mime-type 列將無效。

在這種設置下,TSVN在瀏覽器裏就完全不去獲取狀態了。因此,版本控制下的文件將不會獲得任何圖標覆蓋。文件夾也僅僅有個“正常”狀態的圖標覆蓋,其他的不會顯示,也不會有其他額外的列可用。

優點: 絕對不會佔用任何額外的內存,也完全不會減慢瀏覽器的瀏覽速度。

缺點: 文件、文件夾的狀態信息不會顯示在瀏覽器中。要獲知你的工作副本是否被修改了,你需要使用“檢查更新”對話框。

若你選擇了默認選項,將同樣決定如下選擇: 在文件夾包含非版本控制的項目時,把文件夾圖標覆蓋標記爲已修改。這個有用的設置可以提醒你已經創建了非版本控制的新文件。

排除路徑 是被用來告訴TSVN 不用 在哪些路徑下顯示圖標覆蓋和狀態列。如果你有些很大的工作副本,而這些工作副本僅僅包含你完全不想改變的庫文件,從而你也不需要顯示圖標覆蓋,這時該功能將會很有用。舉個例子:

填寫 f:\development\SVN\Subversion 僅僅 在這個特殊文件夾上取消圖標覆蓋。你仍然可以在該路徑下的所有文件、文件夾上看到圖標覆蓋。

填寫 f:\development\SVN\Subversion* 將在路徑以 f:\development\SVN\Subversion 開始的所有 文件和文件夾上取消圖標覆蓋。這意味着你在該路徑下的任何文件/文件夾上都將看不到圖標覆蓋了。

包含路徑 也使用同樣的語法。除了有些反例: 即使該路徑處在某個取消圖標覆蓋顯示的特定驅動類型下,或是處在上面的排除路徑之下, 也依然會顯示圖標覆蓋。

TSVNCache.exe 同樣使用這些路徑來限制它的掃描。如果你想讓它僅僅在某些特定文件夾裏監視,就取消所有的驅動器類型,並僅僅包含你允許被掃描的文件夾。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章