OcentOS下创建多个SVN版本库
SVN服务器版本库有两种格式,
一种为FSFS,
一种为BDB
把文件上传到SVN版本库后,上传的文件不再以文件原来的格式存储,而是被svn以它自定义的格式压缩成版本库数据,存放在版本库中。
如果是FSFS格式,这些数据存放在版本库的db目录中,里面的revs和revprops分别存放着每次提交的差异数据和日志等信息
- 创建BDB存储方式的版本库
- $mkdir /opt/svn/repositories
- $svnadmin create --fs-type bdb /opt/svn/repositories
- 创建FSFS存储方式的版本库
- $mkdir /opt/svn/repos
- $svnadmin create --fs-type fsfs /opt/svn/repos
- #/opt/svn/ 就是根目录 但实际检出时需要带不同的文件夹名称
- [root@iZ94hzx4xerZ svn]# ll
- total 8
- drwxr-xr-x 6 root root 4096 Mar 21 22:56 repos
- drwxr-xr-x 6 root root 4096 Mar 21 22:21 repositories
- [root@iZ94hzx4xerZ svn]# svnserve -d -r /opt/svn/
- 启动svn:
- 方式一:svnserve -d -r /opt/svn/ #默认的启动端口号为3690
- 方式二:su – svn -c “svnserve -d –listen-port 9999 -r /opt/svn/”
- 其中:
- su – svn表示以用户svn的身份启动svn;
- -d表示以daemon方式(后台运行)运行;
- –listen-port 9999表示使用9999端口,可以换成你需要的端口。但注意,使用1024以下的端口需要root权限;
- -r /opt/svn 指定根目录是/opt/svn。
- 9、检查是否启动
- netstat -tunlp | grep svn
- 如果显示以下信息说明启动成功
- tcp 0 0 0.0.0.0:9999 0.0.0.0:* LISTEN 10973/svnserve
- 10、将svn加入到开机启动
- 编辑rc.local文件:vi /etc/rc.d/rc.local
- 加入如下启动命令:
- /usr/local/svn/bin/svnserve -d –listen-port 9999 -r /opt/svn
- 11、如果想停止svn,则使用如下命令:
- killall svnserve
复制代码
12、如果想将svn作为服务: 在/etc/rc.d/init.d/目录下新建名为svn的文件 并设置权限为755:chmod 755 /etc/rc.d/init.d/svn 编辑svn文件:vi /etc/rc.d/init.d/svn, 在里面添加如下代码:
- #!/bin/bash
- # build thisfile in /etc/rc.d/init.d/svn
- # chmod 755/etc/rc.d/init.d/svn
- # centos下可以用如下命令管理svn: service svn start(restart/stop)
- SVN_HOME=/opt/svn
- if[ ! -f "/usr/local/svn/bin/svnserve"]
- then
- echo "svnserver startup: cannot start"
- exit
- fi
- case"$1"in
- start)
- echo "Starting svnserve..."
- /usr/local/svn/bin/svnserve -d --listen-port 9999-r $SVN_HOME
- echo "Finished!"
- ;;
- stop)
- echo "Stoping svnserve..."
- killall svnserve
- echo "Finished!"
- ;;
- restart)
- $0stop
- $0start
- ;;
- *)
- echo "Usage: svn { start | stop | restart } "
- exit 1
- esac
复制代码
之后便可以以service svn start(restart/stop)方式启动SVN。
通过web方式访问svn有很多方法,请参阅配置websvn或配置bsSvnBrowser的方法
|