由於 CVS 的不少缺點,CVS 的主要作者(包括 CVS 用家必買"?#125;經" Open Source Development with CVS 的作者 Karl Fogel)在他們現職的公司的資助下開發了 subversion。Subversion 的新功能包括 atomic commit, Directory versioning, file renaming 等等。除了使用 svnserver 作為服務器(可如 CVS 般使用 SSH 作認證),亦能配合 Apache httpd 2.0 使用以達到更 fine-grained 的 Access control。 安裝步驟: 1、cd /usr/ports/www/apache2/ 2、make WITH_BERKELEYDB=db4 install clean 3、cd /usr/ports/devel/subversion 4、make WITH_MOD_DAV_SVN=yes install clean 5、建立數據目錄,例如 make /data/svn 6、vi /usr/local/etc/apache2/httpd.conf 7、加入 代碼: <Location /svn> DAV svn SVNParentPath /data/svn # AuthType Basic # AuthName "Subversion repository" # AuthUserFile /usr/local/etc/apache2/svn-auth-file # <LimitExcept GET PROPFIND OPTIONS REPORT> # Require valid-user # </LimitExcept> </Location> 其中 SVNParentPath 項指示所有項目的父目錄,可以避免為每個項目獨立設置。 注釋掉的是存取的時候是否驗證密碼。密碼使用htpasswd 建立。 8、一般客戶端可能是windows平台,下載windows圖形客戶端 http://www.rapidsvn.org/download/RapidSVN-0.5.0.exe 9、建立項目容器 svnadmin create /data/svn/test 10、啟動 apache,安裝客戶端並執行 OK,完成了,客戶端的使用蠻簡單的。客戶端同時也有 X 的版本。 當然,喜歡的也可以使用命令行。