星期四, 10月 17, 2013

TortoiseSVN 版本管理 - 各種資料夾符號(Icon)意義

現在工作上在使用的版本控管軟體是 TortoiseSVN,也就是下圖的小烏龜圖案 。
官方網站 : http://tortoisesvn.net/



版本控管的重要性,我想就不必多說了。
多人專案中這是一定需要做的動作。

而在使用過程中,一定會發現資料夾跟檔案旁邊多了許多符號 :


到底這些符號的意思是什麼呢 ?

目前網路上的中文說明好像不多,但官網又只有提供英文版。
(破破的簡體中文版就算了吧 ... )

因此這邊就做一個小小的翻譯動作跟說明,
方便未來做參考囉 !




▲這個圖案表示 : 這個本機中的檔案/資料夾,是跟目前的版本符合的(也就是沒有變更)





▲這個圖案表示 : 當你開始編輯檔案,就會變成紅色驚嘆號來提醒你檔案已經變更了。未來需要再做 Commit 來儲存變更。





▲這個圖案表示 : 當你 Commit 後,如果檔案變成這個符號,表示本機檔案與現存版本有衝突(Conflict)。

衝突的意思例如:你這一次變更的地方現存版本有衝突(修改在同一個地方)。

因此當 Commit 時,小烏龜並不知道要用你的版本、還是要用線上的版本。

這時候就要用編修衝突(Edit Conflict)的方式,來調整出一個最終版本,才有辦法 Commit 喔。





▲這個圖案表示 : 這有兩個意義。一是說目前的檔案會在版本控制中被計畫性(been scheduled)的刪除;或者是說在目前版本控制中遺失這個檔案。

其實這個狀態我無法完全理解,有可能是由其他軟體或者使用者自行加上狀態來控制的。

之前在專案中碰到時,都是在 Commit 時才去調整這些檔案。但詳細的發生原因我就不太知道了,有請高手解答!





▲這個圖案表示 : 目前的檔案並沒有在現存版本中,但也沒有在忽略(ignore)清單中。

這主要在你新增檔案時需要用到。

例如今天網站多了一個CSS檔案。將它拉進去資料夾時,就會變成這個圖案。

因此在 Commit 時,就可以進行新增的動作;或者忽略它 !

(預設好像會被列在忽略清單內,如果是確定要新增的檔案,記得要看看忽略清單)





▲這個圖案表示 : 主要是用來提示一些由你鎖定的檔案,如果你沒有要用就記得解鎖來讓別人可以去做更新或使用。

上鎖主要就是,避免一些檔案無意間被別的 User 更改、或者不希望被修改。

這個狀態我沒有用過,但基本上就是來避免檔案被別人蓋過。





▲這個圖案表示 : 如果你將檔案設成「svn:needs-lock」,小烏龜會把它變成唯讀,直到你解鎖這個檔案為止。

這個圖案跟鎖,差別「應該」是在於這個檔案是不是有更新過。

例如我先將一個檔案上鎖,就會變成灰色的勾;
接著在你 Commit 之後檔案被同步,也就是狀態變成正常(Normal);
這時候圖標就會變成鎖的圖案,來提醒你 : 「如果沒有要繼續上鎖,記得解鎖喔 ^_<」

應該是這樣子的吧 ... 有待高手解答 (哈哈,有沒有這麼不負責任啊)





▲這個圖案表示 : 下次 Commit 時會加入版本控制的檔案。

其實文章寫到這邊才覺得,或許有一些狀態(Status)的新增或刪除,是由軟體(例如 Visual Studio)來進行控制的。

在 VS 裡面如果新增檔案,基本上都是會變成加的圖案;
但如果從資料夾直接操作,例如拉檔案到裡面,基本上都會變成問號圖案。





▲這個圖案表示 :  目前的檔案是忽略加入版本控管的。你可以在檔案上按右鍵、忽略,來讓它變成忽略檔案。



文章寫到這邊也尾聲囉! 希望這些簡單的翻譯能幫助到你。

順帶一提,在找文獻的時候還是對岸的網站居多阿 ...
希望台灣多多加油 :D

Icon 說明原文網址 : http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-wcstatus.html

沒有留言:

張貼留言