如果你現在正與多人合作一同製作一條路線、列車、物件……的話,或許你會試過在你修改完一個檔案後才發現別人也在修改這個檔案,之後要慢慢比較不同版本的檔案作出取捨。有沒有想過其實是有更好的做法?使用版本控制系統就正好解決這個問題,讓製作過程更具效率。
版本控制系統一般會安裝在一台伺服器中。它會追蹤專案中的每一個檔案的內容變動,當發現有變動時,軟件便會為這次修訂賦予一個編號,並記錄這個檔案目前的版本和上一個版本的差別。專案的成員可以檢視和還原檔案到先前的版本。除此之外,版本控制系統還會在專案的成員從伺服器的檔案庫 (Repository) 取出 (Check-out) 檔案時自動鎖上檔案,防止在有人正進行修改的期間讓其他人同時修改該檔案。當該成員修改完成後,便需將檔案放回檔案庫中(這動作稱為提交 (Commit / Check-in))。這樣就可以確保所有成員取得的檔案都是最新的版本。
版本控制系統主要都是在軟件開發時使用,檔案庫存放的是軟件的程式碼。不過版本控制系統並不只是適用於純文字檔案,圖片、文件等的檔案其實亦可以使用版本控制系統來管理。
版本控制系統其實還會結合在一些系統中,例如維基百科所使用的 Wiki 引擎 MediaWiki 亦有版本控制的功能。
如果你的專案是由一人開發的話,那麼使用版本控制系統其實作用不大(除非你想保留不同的檔案版本以便隨時還原)。但如果你的專案是由多人開發的話,那麼版本控制系統便會很有用了。
CVS 和 SVN 是比較有名的版本控制系統。不少集成開發環境 (IDE) 已經內置取出和提交檔案。你可以自行架設伺服器並安裝 CVS / SVN,網上亦有不少免費的 CVS / SVN 寄存服務。但使用寄存服務就要留意檔案庫的大小限制和速度。
而 Adobe Version Cue 是隨 Adobe Creative Suite 所附送。它對 Adobe 的軟件有較好的支援,而且還有 Adobe PDF 審查功能。你需要找一台電腦安裝 Version Cue 作為檔案庫,每個成員都需要安裝 Adobe Drive(Adobe Drive 隨支援 Version Cue 的 Adobe 軟件所附送)來存取檔案庫中的檔案。
至於 Syncplicity 和 Dropbox,它們都是網上同步的服務,嚴格來說它們都不是版本控制系統,但都有類似版本控制系統的功能。使用這些服務你無須自行架設伺服器,你的檔案會被上載到它們的伺服器中。你需要安裝它們的同步軟件來存取檔案庫中的檔案。但需留意檔案大小限制以及最多可同步的電腦數量。
其實還有不少版本控制系統可供使用,以上列出的只是一小部分。
最近回應
8 周 4 天前
9 周 1 天前
34 周 4 天前
1 年 14 周前