【Subversion Edge简介】
CollabNet Subversion Edge是一个Subversion服务器的一个发行版,其中包括Apache,Subversion和ViewVC的完整软件堆栈,以及用于管理服务器的强大的基于Web的控制台。
项目托管地址: https://ctf.open.collab.net/sf/projects/svnedge/
【Subversion Edge安装】
安装要求
- jDK1.6以上
- 安装和启动必须是root用户
- 版本库目录repositories所有者必须是普通用户
下载地址:http://www.collab.net/downloads/subversion
本文档下载的版本为 CollabNetSubversionEdge-5.1.4_linux-x86_64.tar.gz
将二进制包解压到安装目录
[root@localhost src]# tar -xvf CollabNetSubversionEdge-5.1.4_linux-x86_64.tar.gz -C /opt/
[root@localhost opt]# ls
csvn
添加普通用户普通用户csvn作为csvn启动时的用户
[root@localhost opt]# useradd csvn
现在可以选择直接启动csvn web界面命令如下
[root@localhost ~]# cd /opt/
[root@localhost opt]# chown -R csvn:csvn csvn
[root@localhost ~]# cd /opt/csvn/bin/
[root@localhost bin]# ./csvn start
Starting CSVN Console...
...
CSVN Console started
Waiting for application to initialize (this may take a minute)........................................................................................................................
CSVN Console is ready at http://localhost:3343/csvn
此时可以进入web界面并在web界面启动svn服务,也可以在命令行中启动svn
[root@localhost bin]# ./csvn-httpd start #svn启动命令
Starting Subversion Edge Apache Server: OK
现在就可以愉快地创建版本库添加用户了,但是有一个问题是,由于提供svn服务的用户 是普通用户,不能绑定80和443端口,所以如果希望访问地址绑定1024以下端口,要做如下配置
-
Use the bind helper application.
chown root:csvn /opt/csvn/lib/httpd_bind/httpd_bind chmod u+s /opt/csvn/lib/httpd_bind/httpd_bind
-
Start httpd under sudo
使用/usr/sbin/visudo命令编辑sudoers file将以下内容添加到文件末尾
Defaults env_keep += "PYTHONPATH" Defaults:csvn !requiretty csvn ALL=(ALL) NOPASSWD: /opt/collabnet/csvn/bin/httpd
配置之后,启动csvn后就可以绑定80端口了(端口的配置是在图型界面中)
【Subversion Edge 迁移】
步骤1
将要迁移的版本库文件夹复制到新的版本库父目录中
步骤2
用要迁移svn的用户文件配置文件覆盖新的svn服务器的用户配置文件,如果新的svn有用户的话,就追加不 覆盖
步骤3
在新的svn服务器的data/csvn-production-hsqldb.properties文件中,添加旧的svn服务器的 同一服务器的INSERT INTO USER VALUES开头的行(用户信息,内容不多且连续)
步骤四
重启服务器,discover版本库(web界面有选择按钮)