自从
SourceForge宣布支持
Subversion后,网上开始出来很多的推荐文章,甚至于象
嘟嘟老窝那样宣布
全面迎接SVN时代来临。想当初我准备升级SourceSafe时,在CVS和Subversion间也挣扎了好一阵子,最终还是选了CVS,主要还是因为Subversion当时还没有推出正式版,并且安装也让人觉得有点望而却步。不过,现在好了,Subversion发布了
1.3版,支持SVN的
小海龟也推出1.3.2版了,所以,如果你想选一个更酷一点的源代码控制软件,可以尝试一下SVN了。
当然,即使SVN的安装现在已经简单很多了,但是有些step-by-step的教程总比看足足有300多页的官方手册来得快捷些,那么下面这两篇文章应该是首选了,因为准确、详细而又是中文
:
实战SVN For Apache2(一) 实战SVN For Apache2(二)不过,有个小问题,那就是你按照实战二的方式配置的时候,在
Test1.project中别忘了在开头和结尾处加上<Location /test1>和</Location>。不过,你肯定多少对其内嵌的几乎没有什么功能的Web界面颇多失望吧,那你马上得装TortoiseSVN这个强大而又精致的小海龟,会立马让你受伤的心获得不少安抚,私下认为比同门师兄
TortoiseCVS要好一些。当然,你也可以用
SVN::Web,只是这个用骆驼文写的东西,我是没尝试了,到
这里可以看看效果,是不是觉得和ViewCVS比较象了呢?其实,ViewCVS现在也支持SVN了,不过现在叫
ViewVC了,并且从SourceForge迁移到了
Tigris,是不是因为支持SVN的缘故呢?只是不知道什么时候推出1.0
,我的CVS上还想用呢。
当然,也许你还是怀念象CVSNT一样,让SVN在后台作为一个服务默默的运行,而不要通过什么http协议来上传下载的,那么,你要看这篇文章了
Mere-Moments Guide to installing a Subversion server on Windows。什么,英文的,那么,你直接到
这里下载个安装程序,一路Next下去,就装好了svn的命令行工具和小海龟,还创建了一个respository供你体验,这总归够简单了吧
。
好了,如此折腾一番,我终于也开始体验SVN了,只是,除了对文件夹、二进制文件、改名和删除等支持更好外,SVN到底还有多少魅力能让你决定从CVS转移到SVN呢?我还在继续摸索中,只是
SourceForge已经说了几点
Limitations:
首先,这是个复杂的工具(SVN is a complex tool),所以,你最好在本地先练熟了再上路;
其次,SVN是区分大小写的,所以,在Windows这种不区分大小写的操作系统下,你要当心了,要不你创建一个文件名全小写的文本文件,commit后,将其改为大写,再commit,然后删除,再创建一个全小写的同名文本文件,再次尝试commit,你可能就会对这一点有比较深刻的体会了;
接下来是速度,比CVS慢,这个可不是我说的,是开源圣地之一的SourceForge说的(While we are taking all efforts to ensure our infrastructure is configured optimally, SVN is not as fast as CVS.),可不要跟我争;
第4个是你不能轻易地从仓库中彻底删除一个文件或目录,哪怕你一不小心传了个1G的电影上去,SVN也会将其记录在案,直到你被boss fire掉为止,所以,这也是支持删除的另一面吧,当然,解决方法还是有的,只不过估计你不一定有这个从备份中恢复仓库的权限;
第5个则是文件名中不能有空格。