如果你覺得SVN的cache程序使得你的機(jī)器反應(yīng)很慢的話,那可以參考這個方案.不過可能要改變你以前使用習(xí)慣.
這個方案有兩部分,第一部分是關(guān)閉SVN的cache監(jiān)視;第二部分是顯示文件差異時,使用SVN的“check for modifications”顯示差異。
1.關(guān)閉SVN的cache監(jiān)視。即關(guān)閉tsvncache.exe這個程序?qū)δ夸浀谋O(jiān)視。
具體操作步驟如下:
a) 右擊任意目錄打開右鍵菜單,打開"tortoisesvn" => "settings"下的設(shè)置窗口
b) 找到"icon overlays"的設(shè)置項(xiàng),將"status cache"設(shè)置成"none"
2.使用SVN的“check for modifications”顯示差異
具體操作步驟如下:
a) 右擊需要比較差異的目錄,打開右鍵菜單,打開"tortoisesvn" => "check for modifications",打開比較差異窗口
注:這樣顯示文件差異是因?yàn)樯厦骊P(guān)閉監(jiān)視后,再有修改程序文件,文件夾不再更新修改標(biāo)識了,無法再通過查看文件平圖標(biāo)來知道是否有文件修改。
今天本人這樣修改了,感覺機(jī)器強(qiáng)多了!不再有explorer疆死的情況了!爽!
以下是SVN設(shè)置框中具體的設(shè)置的介紹(摘自:http://tortoisesvn.net/docs/release/TortoiseSVN_zh_CN/tsvn-dug-settings.html)
此頁面允許你選擇TSVN為哪些條目顯示圖標(biāo)覆蓋。選擇網(wǎng)絡(luò)磁盤可能會非常慢,所以默認(rèn)情況下不為定位于網(wǎng)絡(luò)共享中的工作副本顯示圖標(biāo)覆蓋。你甚至可以取消所有的圖標(biāo)覆蓋,但那樣做還剩下什么好玩兒的呢?
USB閃存看上去是個特殊情況,因?yàn)轵?qū)動類型是設(shè)備自主標(biāo)識的。于是有些顯示為固定驅(qū)動器,而有些顯示為可移動磁盤。
By default, overlay icons will appear in all open/save dialogs as well as in Windows Explorer. If you want them to appear only in Windows Explorer, check the Show overlays only in explorer box.
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:
- 默認(rèn)
-
把所有狀態(tài)信息緩存在一個獨(dú)立進(jìn)程中(TSVNCache.exe
)。該進(jìn)程監(jiān)視所有驅(qū)動器的更改,并在工作副本中的文件被修改時重新獲取其狀態(tài)。該進(jìn)程以最低優(yōu)先級運(yùn)行,所以其他程序不會被它擠兌。這同樣意味著狀態(tài)信息并不是 實(shí)時 的,因?yàn)樗枰獛酌腌姇r間處理圖標(biāo)覆蓋的變化。
優(yōu)點(diǎn): 圖標(biāo)覆蓋遞歸地顯示狀態(tài),就是說,如果一個處在工作副本深處的文件被修改了,所有途徑的文件夾包括工作副本的根目錄都會顯示出修改的圖標(biāo)覆蓋。也因?yàn)樵撨M(jìn)程可以向Windows外殼發(fā)送通知,資源管理器左面的樹形圖通常也會更改。
缺點(diǎn): 即使你已經(jīng)不在項(xiàng)目下工作了,該進(jìn)程仍然持續(xù)運(yùn)行。取決于你工作副本的數(shù)量和大小,它將占用10-50 MB的RAM內(nèi)存空間。
- Windows 外殼
-
緩存在外殼擴(kuò)展dll中直接完成,但僅僅是為那些當(dāng)前可見的文件夾。每次你瀏覽到其他文件夾,狀態(tài)信息就會被重新獲取。
優(yōu)點(diǎn): 僅僅需要很少的內(nèi)存(大約1 MB),并且可以 實(shí)時 顯示狀態(tài)。
缺點(diǎn): 因?yàn)閮H有一個文件夾被緩存,圖標(biāo)覆蓋不會遞歸地顯示狀態(tài)。在大一些的工作副本下,它在瀏覽器中顯示一個文件夾將比默認(rèn)緩存模式花費(fèi)更多時間。而且 mime-type 列將無效。
- 無
-
在這種設(shè)置下,TSVN在瀏覽器里就完全不去獲取狀態(tài)了。因此,版本控制下的文件將不會獲得任何圖標(biāo)覆蓋。文件夾也僅僅有個“正常”狀態(tài)的圖標(biāo)覆蓋,其他的不會顯示,也不會有其他額外的列可用。
優(yōu)點(diǎn): 絕對不會占用任何額外的內(nèi)存,也完全不會減慢瀏覽器的瀏覽速度。
缺點(diǎn): 文件、文件夾的狀態(tài)信息不會顯示在瀏覽器中。要獲知你的工作副本是否被修改了,你需要使用“檢查更新”對話框。
若你選擇了默認(rèn)選項(xiàng),將同樣決定如下選擇: 在文件夾包含非版本控制的項(xiàng)目時,把文件夾圖標(biāo)覆蓋標(biāo)記為已修改。這個有用的設(shè)置可以提醒你已經(jīng)創(chuàng)建了非版本控制的新文件。
排除路徑 是被用來告訴TSVN 不用 在哪些路徑下顯示圖標(biāo)覆蓋和狀態(tài)列。如果你有些很大的工作副本,而這些工作副本僅僅包含你完全不想改變的庫文件,從而你也不需要顯示圖標(biāo)覆蓋,這時該功能將會很有用。舉個例子:
填寫 f:\development\SVN\Subversion
將 僅僅 在這個特殊文件夾上取消圖標(biāo)覆蓋。你仍然可以在該路徑下的所有文件、文件夾上看到圖標(biāo)覆蓋。
填寫 f:\development\SVN\Subversion*
將在路徑以 f:\development\SVN\Subversion
開始的 所有 文件和文件夾上取消圖標(biāo)覆蓋。這意味著你在該路徑下的任何文件/文件夾上都將看不到圖標(biāo)覆蓋了。
包含路徑 也使用同樣的語法。除了有些反例: 即使該路徑處在某個取消圖標(biāo)覆蓋顯示的特定驅(qū)動類型下,或是處在上面的排除路徑之下,也依然會顯示圖標(biāo)覆蓋。
TSVNCache.exe 同樣使用這些路徑來限制它的掃描。如果你想讓它僅僅在某些特定文件夾里監(jiān)視,就取消所有的驅(qū)動器類型,并僅僅包含你允許被掃描的文件夾。