一,获得相关软件包
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
服务;
http://192.168.168.
223
:18080/svn/
testsvn
,当然登陆是要输入用户名和密码的,就是我们在配置向导中创建的,还记得否,
如果没有权限访问该版本库,会有403错误提示
注意
:浏览器上的地址栏!
http://192.168.168.
223
:18080/viewvc
,应该是查看存在的版本库吧
四、
关于新账号以及其操作目录和操作权限等之类的配置
注意:其配置文件在
/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>则不能访问
http://127.0.0.1/svn
下的项目,而只能这样访问,如
http://127.0.0.1/svn/<projectname
>
----------------------------------------------------------------------------
因为篇幅原因,附录将另起一篇文章
六、
svn
在
linux
命令行下的操作
svn
访问日志的关闭,一般情况下,最好把基于
Apache
的访问日志关闭,否则访问日志的大小会增长得很快,特别是使用的人比较多时,会增长得更快。建议把它关掉,保留错误日志就可以了,打开
/etc/opt/CollabNet_Subversion/conf/httpd.conf
,大概在第
217
行,找
“logs/access_log”
有这样字符串的行,并且以
“CustomerLog”
开头的行,在这行前面加上
#
,并保存,这样就可以关闭
svn
的访问日志了。
具体过程见 附录
1
二、
安装