一,获得相关软件包
CollabNetSubversion-client-1.6.9-1.i386.rpm
CollabNetSubversion-extras-1.6.9-1.i386.rpm
CollabNetSubversion-extras-1.6.9-1.i386.rpm
RPM-GPG-KEY-csvn.asc
注:这些rpm文件应该是已经经过特殊编译了,呵呵
注意:后续centos6.0的系统比较多,在安装i386.rpm包的时候可能会发生很多so的包包找不到的情况,可以用链接过去,或者安装下也行,你或许会用到这些命令
#yum provides libc*
#yum install ....rpm
1、首先导入gpg-key,原因如下:
CollabNet Subversion RPMs are signed using our GPG key. As a one-time task,import the CollabNet GPG key using the command:
sudo rpm --import /path/to/RPM-GPG-KEY-csvn.asc 2、接着安装其他rpm包 (安装前注意是否有httpd已经安装了,卸载之)
安装顺序:client、server、extras
注意:三个rpm包安装好后,会自动创建一个系统账号和组csvn
其安装目录为/opt/CollabNet_Subversion
三、配置
在 /opt/CollabNet_Subversion/bin 目录下执行 Configure-CollabNet-Subversion ,进入配置向导,一步步
[root@localhost]# ./Configure-CollabNet-Subversion
查看httpd进程是否启动成功:
#ps -ef|grep httpd 我们可以看到,启动的进程中有一个母进程,其他都是母进程的子进程。
如未启动,则:
/opt/.../bin/httpd -D csvn_installed -D viewvc_installed -k start
在浏览器中访问SVN服务;
,当然登陆是要输入用户名和密码的,就是我们在配置向导中创建的,还记得否,如果没有权限访问该版本库,会有403错误提示
注意:浏览器上的地址栏!
,应该是查看存在的版本库吧
四、关于新账号以及其操作目录和操作权限等之类的配置
注意:其配置文件在/etc/opt/CollabNet_Subversion/conf目录下。
首先,要对将要操作的文件进行备份 #cp -p
第二步,用svnadmin create命令新建一个版本仓库
#svnadmin create school
注意:新建的school版本库会自动创建在/var/svn/repositories目录下,不过这
里需要改变一下属主,和属组。
#chown -R csvn.csvn school
#http://192.168.1.223:18080/svn/school
第三步,新建一个账号(此账号是否通用于httpd和svnserve两种模式???)
#htpasswd -m /etc/opt/.../conf/svn_auth_fle school
注意:这里就不要再加-c选项了,因为验证文件我们已经在前面的向导那里创
建好了,这里只要追加新用户就ok了
再注意:如果新建的用户未授权,则访问版本库的时候会返回403错误,提示该
页无法访问
补:这些账号可以用于svn客户端,貌似无须svnserve这种模式启动。
第四步,为新用户设置访问版本库的权限
#操作svn_access_file.conf文件
注意格式:
【/】
svnadmin = rw
【school:/】
school = rw
一些格式,可以参照附录3
第五步。用浏览器打开测试
#http://192.168.1.223:18080/svn/school
注意:如果没有权限访问相应版本库,会提示403错误提示
第六步,版本库权限设置
据说需要设置各版本库的权限为777,否则上传会报500的内部错误,待验证。
不过我觉得貌似不用。
第七步,安装客户端进行验证
我安装的是TortoiseSVN,其他的应该也是类似的,而我们单位有的同事则是在
用Myeclipse里内嵌的客户端
五、关闭访问日志
见 附录2
备注: 如果使用<Location /svn/>可列出D:/var/svnhome/projects 下的版本库,若为<Location /svn>则不能访问下的项目,而只能这样访问,如>
----------------------------------------------------------------------------
因为篇幅原因,附录将另起一篇文章
六、svn在linux命令行下的操作
svn访问日志的关闭,一般情况下,最好把基于Apache的访问日志关闭,否则访问日志的大小会增长得很快,特别是使用的人比较多时,会增长得更快。建议把它关掉,保留错误日志就可以了,打开/etc/opt/CollabNet_Subversion/conf/httpd.conf,大概在第217行,找“logs/access_log”有这样字符串的行,并且以“CustomerLog”开头的行,在这行前面加上#,并保存,这样就可以关闭svn的访问日志了。
具体过程见 附录1
二、安装