首页 > 代码库 > Linux搭建svn服务

Linux搭建svn服务

svn是为了方便代码进行版本控制

Linux)svn服务器 --> windows) svn访问端

*********
[root@svn ~]# yum install -y subversion

#新建目录存储svn所有文件
[root@svn ~]# mkdir -p /data/svn

#新建资源仓库
[root@svn ~]# svnadmin create /data/svn/project
[root@svn ~]# ls /data/svn/project

/*
* hooks目录:放置hook脚本文件的目录
* locks目录:用来放置subversion的db锁文件和db_logs锁文件的目录,用来追踪存取文件库的客户端
* format文件:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号
* conf目录:是这个仓库的配置文件(仓库的用户访问账号、权限等)

*/
[root@svn ~]# vi /data/svn/project/conf/svnserve.conf
[general]
anon-access = none   
auth-access = write   
password-db = /data/svn/project/conf/passwd   
authz-db = /data/svn/project/conf/authz   
realm = My Test Repository  #这是个提示信息

#添加账户及访问的口令
[root@svn ~]# vi /data/svn/project/conf/passwd
[users]
frankie = 123
james =111
lu = 222

#配置新用户的授权文件
[root@svn ~]# vi /data/svn/project/conf/authz
[groups]
admin = frankie
user = james,lu
//可以按照需求取组名

[/] --> 根目录,即/data/svn/project/
@admin = rw
@user = r

[/op]
@admin = rw
*=

/*格式说明:
*=表示除了上面设置的权限用户组以外,其他所有用户都设置空权限,空权限表示禁止访问本目录,这很重要一定要加上。
注意:对权限配置文件的修改立即生效,不必重启svn。
*/

#启动svn
[root@frankie data]# svnserve -d -r /data/svn/project/

 

注意:不要使用系统提供的 /etc/init.d/svnserve start 来启动,因为系统默认的启动脚本中没有使用 –r /svn/project参数指定一个资源。这种情况下启动的svn服务,客户端连接会提示“svn: No repository found in ‘svn://192.168.11.229/project‘ ”这样的错误。
默认svn服务器端口是3690。

 

Linux搭建svn服务