-------------在Ubuntu上搭建svn------

查看Ubuntu系统的版本信息:可用cat /proc/version命令、uname -a命令与sb_release -a命令。vim

1.卸载svn
sudo apt-get remove --purge subversion
(–purge 选项表示完全删除改软件和相关文件)服务器

查看系统是否存在svn: svnsocket

2.安装svn
sudo apt-get update更新apt-get
sudo apt-get install subversion安装svnsvn


svn help //--svn帮助
svn --version //--svn版本
svnserve --version //--svn server版本测试


3.建立SVN版本库spa

a:建立项目目录和svn仓库:
sudo mkdir /usr/svn
sudo mkdir /usr/svn/vote
sudo chmod -R 777 /usr/svn/vote
sudo svnadmin create /usr/svn/vote
会生成conf db format hooks locks README.txt
sudo chmod -R 777 dborm

b:设置访问权限:
修改配置文件conf/svnserve.confserver

sudo vim svnserver.confrem

去掉[general]前面的#get

去掉anon-access=read前面的# 解释:设置无认证用户的权限为读,默认为读权限

去掉auth-access=write前面的# 解释:设置认证用户的权限为写,默认为写权限

去掉password-db=authz-db = authz (文件可变动为其它)

注:
1.全部的行都必须顶格,不然报错。

c:添加访问用户
sudo vim /conf/passwd

d:设置用户权限:
sudo vim conf/authz

* = rw 全部的组都具备读写权限


三:测试SVN服务器

A:启动服务器
svnserve -d -r /usr/svn [--listen-host 118.24.171.xxx] 或svnserve -d -r /usr/svn
注:
-d:表示在后台运行
-r:指定服务器的根目录


能够用以下命令查看svnserve是否已经运行:
ps aux | grep svnserve

B:中止服务器
killall svnserve
访问 svn://118.24.171.xxx/vote


------err-----
一、svnserve: Can't bind server socket: Address already in use
解决办法: svnserve -d -r /usr/svn --listen-port 3691
默认的启动svn服务,系统默认开启的端口为3690,当你启动第二个版本库时仍是开启3690,因此就冲突了。
二、验证authz文件是否有错误
svnauthz-validate authz
三、svn Authorization failed 配置文件出错
a、svnserve.conf:
[general]
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz

b、passwd:
[users]
admin=123

c、authz: [groups] [/] admin= rw

相关文章
相关标签/搜索