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

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

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

查看系统是否存在svn: svn

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


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


3.创建SVN版本库

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 db

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

sudo vim svnserver.conf

去掉[general]前面的#

去掉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-----
1、svnserve: Can't bind server socket: Address already in use
解决办法: svnserve -d -r /usr/svn --listen-port 3691
默认的启动svn服务,系统默认开启的端口为3690,当你启动第二个版本库时还是开启3690,所以就冲突了。
2、验证authz文件是否有错误
svnauthz-validate authz
3、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

猜你喜欢

转载自www.cnblogs.com/xyc211/p/8934506.html