posts - 1,comments - 0,trackbacks - 0
我初进CM行当,深切了解一点不了解SVN时搭建SVN服务器的痛苦,所以我觉得网上的一些资料过于深奥,对刚入门的来说,不太能明白,所以能用简单的方法达到一样的效果,何乐而不为呢。
我从拿到一台机器开始说,当然这台机器装有windows的操作系统。
1、先安装apache,我采用的是apache_2.0.59-win32-x86-no_ssl.msi,安装过程中只有一个页面是需要填写 的,但是我安装自己机器的时候,它默认的按照我们公司的实际情况已经给填写好了,所以我就没有管它,不知道你们安装的时候也是不是这种情况,还有这个为什 么我还不太清楚。apache就默认路径就行。端口号默认选80,但如果冲突,你可以上C:\Program Files\Apache Group\Apache2\conf地下的http.conf里面找listen:这句话,改成81就行。但一般新装系统的机器是没有这种情况产生的, 但是比如说你新装svn服务器所在机器的系统是为了扩充硬盘的问题,那你就得注意,如果以前项目组使用的是81端口,那装完apache以后手动把 listen:改成81,这样的话方便项目组使用,尽量让他们的操作没有丝毫变化。最后验证apache安装是否成功,可以用ie访问 http://localhost
看出现已经配置好的网站,就说明你安装成功了,如果没成功重装的话你注意卸载的时候把安装目录也全部删除了,有时候删除不了,你可以等会儿,或者重启一下机器就行了。
2、安装svn服务器端,我采用的是svn-1.4.0-setup.exe,也许存在一个配套的问题,当然我提供的那俩装完了是绝对没有冲突 的,svn服务器端的安装就采用默认方式就行。届时apache跟svn服务器端都安装在了C:\Program Files底下。
3、安装svn客户端,也是一路默认就行,最后你可以装个LanguagePack-1.4.0.7195-RC1-win32- zh_CN.exe汉化工具,直接双击它安装,最后在随便一个空地右键,选小乌龟,再选设置,常规设置里把语言选成中文就行。使用中文的话更方便一些,但 也看个人喜好了。
4、新建版本库,当然位置随你的方便选,比如说我建在D盘的根目录下一个文件夹叫test,然后里面再建一个文件夹叫test1,在test1 上点右键小乌龟,选在此创建版本库,注意一定得是个空文件夹,而且这个步骤也可以用个命令来实现,但我觉得能不用命令的就不用命令那么麻烦了。而且我这里 嵌套了两层目录,完全可以再test底下直接创建版本库,只是因为可以创建多个版本库在test下,跟test1同级。同时在test文件夹里创建一个 passwd文件,没有后缀名那种的。暂时先为空吧,等以后用到的时候再详细说怎么用这个文件,同样在test1文件夹里创建一个access文件,也是 没有后缀名那种的,也暂时为空。
5、开始配置apache,进入Subversion\bin的目录,将mod_dav_svn.so和mod_authz_svn.so、 libdb44.dll拷贝到apache group\apache2\modules目录。打开apache group\apache2\conf\httd.conf,掉以下行的注释符#:#LoadModule dav_fs_module modules/mod_dav_fs.so,然后在LoadModule节的最后添加以下两行:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so,最后在配置文件的最后加上<Location /test1 >
DAV svn
SVNPath D:\test\test1
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile D:\test\passwd
AuthzSVNAccessFile D:\test\test1\access
Require valid-user
</Location>
以上的参数都是根据上面我建的实际情况填的,大家可以根据各自的实际情况填写这些参数。这段 以<Location></Location>代码,以后如果建了第二个版本库,比如跟test1同级的test2,你就再加一 段test2的<Location></Location>就行,但是注意,test1跟test2可以公用一个passwd文 件,所以关于passwd文件的地址永远是一样的。
6、创建用户,即使passwd文件里的内容不空了。这时候使用命令,cmd打开dos窗口,cd切换目录到C:\Program Files\Apache Group\Apache2\bin,打htpasswd -c D:\test\passwd zy,回车让输入密码两次。这里zy是我取的用户名。这时候你打开passwd文件就发现里面就写的东西了,除了zy不是乱码外,别的都是乱码,因为密码 保护的问题吧。因为是第一次创建用户就用-c,以后再增加就不能用-c了,再要用的话我发现就去掉以前所有的用户了,你要增加用-m,删除用户用-D,给 人修改密码也跟增加的操作一样。所以以后每次有人让你哪个哪个项目加一个人的权限,你可以先看一下passwd里有没有他的用户,直接查名字就行,如果没 有再给他-m,有就直接针对那个项目改access文件就行。我在这里先就上面那样创建一个叫zy的用户。
7、设置每个项目的access文件,记事本打开编辑,
[groups]
scm=zy
all=zy

[/]
@scm = rw
@all = r
最简单的就写成这样,当然根据项目的实际情况分不同的组,加很多的人,而且还会有很多级的文件夹,每个文件夹下规定每个组的权限。注意这里千万不 要出错,比如说你上面的组叫cm,你下面写成了@scm,你就发现所有人都访问不了库了。而且还有一个需要注意的就是如果你建的库里将来有中文名字的目 录,你就得用EmEditor来编辑这个access文件,保存类型:All Files(*.*);Encoding选择UTF-8格式;Add a Unicode Signature(BOM)不选择这个选项;Return Method选择:No Change;直接替换原来的即可。我不管这个为什么,只要这么操作就行。
8、设置完了这些以后,你建一个空文件夹,把库checkout下来,选中这个空文件夹点检出,直接目的地址就是这个文件夹,上面的源地址,如 果是本机你操作的话可以输入http://localhost/test1,如果不是本机localhost可以换成那台机器的ip地址,如果端口号是 80就那样,如果是81的话还得在ip地址后加上:81,提示输入用户名密码,你这时候用zy用户即可,然后可以在这个文件夹里写东西,比如说初始建库的 时候可以把空目录传上去,就是用客户端提交,就是把一堆空目录放到这个空文件及里,点空文件夹邮件提交,选中所有新加的东西点确定。
这样差不多操作都完了,我就每次都用这样的简单操作,至于有些说要改什么版本库文件夹底下的svnserve.conf、authz、passwd等文件,估计也能实现统一的效果,但我觉得太繁琐了,我喜欢我的方法。
有什么不对的请大伙指正,欢迎~
posted on 2009-04-20 12:38 viekie 阅读(229) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: