因工作的需要,對流行的幾種版本控制工具做了些對比:
1. cvs
cvs無疑是個老資格的工具了,而且大多數的open source軟件都是用cvs進行版本管理的. 分支功能和cvs的自動合并等都是比較強大的地方.但這東西的命令行操作拒人于千里之外.通常開發人員腦子里裝的東西已經夠多了,如果在check in一個版本的時候還要輸入一長串路徑,文件名...我最討厭在工作的時候頻繁切換腦中的context,什么好的idea都給打斷啦. 雖然說有wincvs的client,但這東西實在不算是先進.
2. SubVersion
cvs已經進入了系統維護階段,原來的主力人馬搞了這個SubVersion. 據說改用了DB存儲(據說支持提交過程的事務特性,我想應該就是提交等過程中假如有部分操作失敗,那么可以完整的rollback整個操作吧..), 另外文件夾也可以進行版本控制.
還能夠直接對文件進行改名、刪除等操作,這些操作也是history的一部分....等等. 我只是想要一個輕量級的version control system,這東西的文檔鋪天蓋地,似乎太繁雜了.
不過這個工具能通過WEB進行部分管理,這是我挺感興趣的.但我想如果要通過WEB做到很完整的功能,肯定要通過嵌入ActiveX控件等方法才能做到.但這個東西本身很大部分就不是windows平臺的,所以web的功能應該也就很有限了.
3.VS.net 2005的團隊開發工具....
毫無了解,因為沒裝過這個Beta1的東西,不想搞到自己的電腦一團糟.....
4. VSS Remoting
VSS本身是個很爛的東西,在LAN里面工作還勉強湊合能用.真不知道為什么MS會推出這樣的一個半成品. 和VisualStudio號稱能集成工作,其實真正用起來問題多得很. 我基本是不會把它和IDE集合到一起用的. VSS Remoting解決了internet上使用VSS的困難, 我猜想它是用automation的方法操作服務器和客戶端的VSS,據說走的是HTTP協議,并且加密. 試用了一下,發現還可以. 但是他的試用版只能有一個帳號同時登錄. 每個license的價格是128$(5個以下時).算了,沒空再去disassemble對付這些東西,一個帳號就一個帳號吧,反正三四個人之間輪流登錄使用還是可以的. Yeah, it is my choice~~~
其他商業工具了解的就很少了,我想一般中小公司都不會斥資購買這些按昂貴的輔助開發工具吧.
我需要的那種B/S方式(依靠ActiveX控件或者JavaApplet來增強實現client的功能) 的完善的版本控制工具一直找不到,真是可惜~~
文章來源于領測軟件測試網 http://www.kjueaiud.com/