在原始程式碼控制系統中,既有老而彌堅者,也有後起之秀。常用的原始程式碼控制/版本控制軟體包括ClearCase、VSS和SourceAnywhere等。本文主要對比SourceAnywhere系列與微軟的Visual SourceSafe在功能上的區別。
Visual SourceSafe
只要一談到原始程式碼控制系統,免不了會想到微軟的Visual SourceSafe,簡稱VSS。它是版本控制/原始程式碼控制市場中佔有份額最大的工具。SourceSafe的目標使用者是小型Team Dev或個人使用者,不適合大型複雜的項目或那些地理位置分散的Team 專案。SourceSafe具有基本的版本控制功能,還能與Visual Studio進行無縫結合。
優點:VSS適合小團隊使用,基本的組態管理功能都有。VSS最大的特點就是部署比較簡單,上手比較快。
缺點:
- 適合小型Team Dev或個人使用者,不適合大型複雜的項目或那些地理位置分散的項目。
- 只能在Windows下使用。
- VSS的使用簡便易學,但VSS的功能和安全性較弱,這是VSS的一塊硬傷。
SourceAnywhere系列
SourceAnywhere系列是由加拿大公司Dynamsoft開發的,有三個產品,SourceAnywhere for VSS, SourceAnywhere Standalone, SourceAnywhere Hosted。
SourceAnywhere Standalone是一款基於SQL Server原始碼/版本控制軟體,介面風格與VSS相似,可完全替代VSS。SourceAnywhere for VSS是 Visual SourceSafe的外掛程式,提供對VSS資料庫快速的遠程(VSS Internet)和跨平台訪問,彌補了VSS的不足。與SourceAnywhere Standalone功能相同,但伺服器託管在Dynamsoft.
優點:
- 與VSS基於檔案系統不同,SAWS是Client/Server結構的,資料存放區在SQL Server,不易發生資料庫崩潰;
- VSS為本地團隊設計,SAWS為本地和遠程團隊設計,遠端存取快;
- 天然支援跨平台;
- VSS是為本地可信任的LAN環境設計的,SAWS有更複雜進階的安全設定,可用於Internet環境;
- 除了支援VSS幾乎所有的功能,SAWS有更多的功能以適應現代的開發潮流,比如,Pending Check-ins window, Email notification system, Shelve/Unshelve.
缺點:
- 登陸配置庫需重新串連伺服器,再登陸,稍顯麻煩。
- SourceAnywhere在展開介面左邊的樹形展示結構時並不執行重新整理。
Visual SourceSafe VS SourceAnywhere系列功能對比
“”表示支援,“- ”表示不支援
| 功能對比 |
SourceAnywhere |
VSS+ SourceAnywhere for VSS |
VSS |
| 架構 |
用戶端+伺服器+ SQL Server資料庫 |
用戶端+伺服器+檔案系統資料庫 |
檔案系統資料庫 |
| 快取服務器 |
|
- |
| 遠端存取 |
快速地進行遠端存取 |
僅用於區域網路 |
| 跨平台 |
Windows用戶端和Java用戶端 |
僅適用於Windows |
| Database Backup |
SQL ServerDatabase Backup(自動) |
存檔/ ZIP資料庫(手動) |
| 資料庫穩定性 |
穩定和強大 |
時常損壞資料庫;需要定期檢查 |
| 資料庫安全 |
SQL Server 為後盾;加密資料庫 |
檔案系統的安全性 |
| 電子郵件通知 |
|
- |
| Shelve/Unshelve Pending Check-ins |
|
- |
| 託管版 |
|
- |
| 維護 |
|
- |
| 使用者介面 |
VSS風格 - VSS使用者的學習曲線 |
VSS風格 |
| IDE 整合 |
相容VS、EclipseDreamweaver等 |
總結:
在對這幾款原始碼控制軟體的對比過程中,可以很清楚地看到,每一個產品都有自己的內容、自己的迷人的地方和缺點。VSS的使用簡便易學,但VSS的功能和安全性較弱,且只對可以顯示開機時所有啟動的項目。SourceAnywhere很好地平衡了功能性、易用性、安全性和穩定性,非常適合大型複雜項目和地理位置分散的項目,但是相比VSS而言,SourceAnywhere的價格稍高。 你選擇哪一款原始碼/版本控制軟體,這取決於你的環境、預算和你的Team Dev和項目的配置。