vps环境(centos 5)下SVN服务器的安装与配置
下载源代码
wget http://subversion.tigris.org/downloads/subversion-1.6.1.tar.gz
下载依赖库
wget http://subversion.tigris.org/downloads/subversion-deps-1.6.1.tar.gz
两个文件必须解压在同一目录
tar -zxvf subversion-1.6.1.tar.gz
tar -zxvf subversion-deps-1.6.1.tar.gz
svn存储版本数据有2种方式:
1. bdb 这个就是berkeley-db
2. fsfs
据说bdb方式在服务器中断时,有可能锁住数据,所以选择fsfs方式
进入 subversion 源码目录
cd subversion-1.6.1
选择编译参数
./configure -prefix=/usr/local/svn -without-berkeley-db
上面的参数第一个是选择安装目录 第二个就是上面的不选用bdb存储版本文件格式,后面编译完会提
示没有BDB,不用管。
编译完后是安装
make && make install
然后加入svn path ,这里好像类似于windows 下面的环境变量,添加完就在终端的任何路径都可以
执行svn操作
vim /etc/prefile
i 插入模式,文件末加入
path=$path:/usr/local/svn/bin
export path
esc :wq 保存退出
测试是否安装成功
svnserve --version
假设已经成功,继续创建仓库
mkdir -p /data/svn/test
-p 的作用是递归创建不存在的目录
svnadmin create /data/svn/test
cd /data/svn/test/conf
创建后test目录里面有一个conf目录,里面有以下几个文件
vim svnserve.conf
anon-access = none #这里设置匿名不允许checkout
auth-access = write #认证后可以提交
password-db = passwd #帐号密码配置文件
authz-db = authz #权限认证配置文件
保存退出,编辑帐号密码配置文件
vim passwd
格式如下
ceshi = 123456 #前面是用户名 后面是密码
保存退出,编辑权限认证配置文件
vim authz
格式如下
[test:/] #这个是之前创建的版本仓库
ceshi = rw #和passwd里面的用户名要对应 w是写 r是读
保存退出,启动svn服务
svnserve -d -r /usr/local/svn
如果要开机自动运行继续编辑文件
vim /etc/rc.local 加入上面的命令
确认有没有政策启动的命令 netstat -tunlp | grep svn
好了,现在可以在客户端checkout了